最近のプロジェクトには次のモデルがあります。
class User < ActiveRecord::Base
# setup association
has_one :user_detail
has_one :employee
has_one :company, :through => :employee
end
class Employee < ActiveRecord::Base
belongs_to :user
belongs_to :company
end
class Company < ActiveRecord::Base
has_many :employees
has_many :users, :through => :employees
end
ユーザー サインアップ用のネストされたフォームを作成するには、User#new アクションで会社を作成する必要がありますが、次のコードを試してみましたが、機能しませんでした。
def new
@user = User.new()
@company = @user.build_company()
end
このエラーは、@user の build_company メソッドがないことを示しています。
だから私は別のアプローチを試しました:
def new
@user = User.new()
@company = @user.company.build()
end
まだ動作していません。エラーはbuild()
nil クラスのメソッドではありません。
Rails は、この種の 1 対多のジョイント テーブル アプローチをサポートしていませんか?