私はモデル化しなければUser
なりませんCompany
。そして、次のような関連付け:
class User < ActiveRecord::Base
has_and_belongs_to_many :companies
end
と
class Company < ActiveRecord::Base
has_and_belongs_to_many :users
end
結合テーブルを作成するための移行中:
class CreateCompaniesUsers < ActiveRecord::Migration
def change
create_table :companies_users, :id => false do |t|
t.references :company
t.references :user
t.timestamps
end
end
end
次の場合、正常に動作しています。
user = User.new(:name => "name", :email => "email@em.com" :password => "pass")
user.companies.find_or_create_by_name(:name => "name")
user.save
users
次の場合は機能しません(ただし、データをandに挿入しますcompanies
):
user = User.first # or by finding some existing user
user.companies.find_or_create_by_name(:name => "name")
さらに、次のメッセージが表示されます。
Creating scope :page. Overwriting existing method Company.page.
これから抜け出すのを手伝ってください。ありがとう。