コントローラーからフォームに変数を渡そうとしていますが、役に立ちません。
別のコントローラーで動作しますが、新しいユーザー登録では動作しません。
def update
@profile = Profile.find(params[:id])
@profile.form = "signup"
...
end
モデルの内部@profile.form
で値を取得するためにできる
これは、新規ユーザー登録では機能しません:内部作成アクション:
undefined method `form=' for nil:NilClass
新規ユーザー登録時にモデルに変数を渡す方法は?User = User.new
その後@user.form == "signup"
も機能しません、私は私の属性のアクセス可能なリストに:formを持っています
モデルの一部:
attr_accessible form
...
validates :city_id, :presence => true, :if => :signup?
def signup?
#@profile.form == "signup"
#@user.form == "signup"
if self.form == "signup"
return true
else
return false
end
end
編集1:まだモデルにパラメータを渡すことができません:S:S:Sはあらゆる可能な方法を試し、グーグルは解決策を見つけました。
登録用のcreateメソッド#create =
def create
profile = Profile.new
profile.form = "signup"
super
end