У меня проблемы со следующим кодом:
User < AR
acts_as_authentic
belongs_to :owner, :polymorphic => true
end
Worker < AR
has_one :user, :as => :owner
accepts_nested_attributes_for :user
end
Employer < AR
has_one :user, :as => :owner
accepts_nested_attributes_for :user
end
Я хотел бы создать регистрационные формы на основе типов пользователей и включить поля аутентификации, такие как имя пользователя и пароль. В настоящее время я делаю это:
UserRegistrationController < AC
#i.e. a new Employer
def new
@employer = Employer.new
@employer.build_user
end
...
end
Затем я включаю поля пользователя с fields_for
. Все представления отображаются нормально, но вот в чем проблема: я не могу создать пользователя, он говорит, что :password
- неправильный метод, поэтому я предполагаю, что логика аутентификации была обойдена
Что я должен делать? Я делаю это неправильно вообще? Должен ли я отбросить полиморфные ассоциации в пользу Single Table Inheritance? Что бы я ни делал, я должен убедиться, что он хорошо сочетается с Authlogic.