Ich versuche, die folgende Datenstruktur auf Saatgut:Rails viele zu viele, Samen Datensätze mit zusätzlichen Informationen
class Company
has_many :user_roles
has_many :users, through: :user_roles
end
class User
has_many :user_roles
has_many :companies, through: :user_roles
end
class UserRole
belongs_to :user
belongs_to :company
end
Neben den Feldern auch die Userroles Tabellen user_id und company_id hat das Feld „Rolle“, die besagt, ., ob der Benutzer ein „Mitglied“ oder „admin zu einem bestimmten Unternehmen
ich versuche, um die Tabellen zu Saatgut wie folgt:
u1 = User.create(name: 'Tester 1')
u2 = User.create(name: 'Tester 2')
e1 = Company.create(name: 'Company 1')
e2 = Company.create(name: 'Company 2')
ur1 = UserRole.create(role: 'admin', user_id: 2, company_id: 1)
ur2 = UserRole.create(role: 'member', user_id: 3, company_id: 1)
ur3 = UserRole.create(role: 'admin', user_id: 3, company_id: 2)
Aber wenn ich versuche, um zu überprüfen, die UserR Die ole-Tabelle ist immer leer und es wird keine Verbindung zwischen den Tabellen hergestellt. Wenn ich versuche, Benutzer zu den Firmen direkt an, mit
e1.users << [u1, u2]
e2.users << [u2]
Dann wird die Userrole Tabelle zeigt, aber ich weiß nicht, wie die ‚Rolle‘ Informationen hinzuzufügen. Danke für Ihre Hilfe! :)
Dies gelöst, @gerry, danke eine Tonne! –
@OriginalBBQSauce Großartig! Froh, dass ich Helfen kann! Beim Seeding empfehle ich immer bang '!' Methoden (z. B. 'create!'), Um einen Fehler sofort zu identifizieren. – Gerry