33

私は、ユーザーがコメントにメールを残すだけでコメントを投稿できるアプリを作成しています。

メールアドレスをパラメータとしてリンクすることで、そこから直接登録できるようにしたいと思います
(: <%= link_to register_path(:email => @comment.email %>)-したがって、既存のユーザーレコードはまだありません。これは、オプションを介してフィールド
に値を適用することによって実行する必要があります。form.input:value

しかし、次のコードは機能しません!

<%- if params[:email] -%>
  <%= f.input :email, :required => true, :value => params[:email] %>
<%- else -%>
  <%= f.input :email, :required => true %> 
<%- end -%>

私はformtasticrdocとローカルgemの内部を調べましたが、そのためのオプションが見つかりませんでした。

誰か提案?

4

2 に答える 2

79

うん、あなたはすべて自分で正しい答えを得ました!Formtasticのrdocはめちゃくちゃですが、現在取り組んでいます。これを純粋にビューレベルで必要とする場合の別のオプションは、:input_htmlオプションを使用することです。これにより、入力タグのHTML属性に直接アクセスできます。

f.input :email, :input_html => { :value => params[:email] }
于 2010-01-11T20:49:54.787 に答える
10

時々、最も簡単なことが頭に浮かぶことがあります。

アプローチ:ビューではなくコントローラーでジョブを実行してください!

if params[:email]
  @user = User.new(:email => params[:email])
else
  @user = User.new
end

お邪魔になってすみません!

于 2010-01-11T20:32:00.577 に答える