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 -%>

我查看了formtastic rdoc和本地 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 回答