Hi (огромное Rails новичка здесь), у меня есть следующие модели:Rails: создать на HAS_ONE ассоциации
class Shop < ActiveRecord::Base
belongs_to :user
validates_uniqueness_of :title, :user_id, :message => "is already being used"
end
и
class User < ActiveRecord::Base
has_one :shop, :dependent => :destroy
end
Когда я собираюсь создать новый магазин, я получить следующее сообщение об ошибке:
private method `create' called for nil:NilClass
Это мой контроллер:
@user = current_user
@shop = @user.shop.create(params[:shop])
Я пробовал разные варианты, читая руководства и учебные пособия здесь и там, но я более смущен, чем раньше, и не могу заставить его работать. Любая помощь будет принята с благодарностью.
Edited вопрос название, чтобы отразить вопрос. Дубликат [Использование сборки с ассоциацией has_one в рельсах] (http://stackoverflow.com/questions/2472982/using-build-with-a-has-one-association-in-rails) –
вы также можете использовать '@ user.build_shop (params) ' – ImranNaqvi