开发者

formtastic - how to prepopulate a string input with a value

I'm building an app, where users can give comments by just leaving their email to the comment.

I want them to be able to register directly from there, by a link with their email adress as a param

(like: <%= link_to register_path(:email => @comment.email %> ) - so there is no existing user record yet.

this should be done by applying a value to the form.input field via the :value option.

But the following code doesn't work!

<%- if params[:email] -%>
  <%= f.input :email, :required => true, :value => para开发者_高级运维ms[:email] %>
<%- else -%>
  <%= f.input :email, :required => true %> 
<%- end -%>

I had a look inside the formtastic rdoc and inside my local gem but couldn't find any option for that.

Suggestions anyone?


Yup, you got the right answer all by yourself! Formtastic's rdoc is a mess, but we're working on it. Another option if you want this purely at a view level is to use the :input_html option, which gives you direct access to HTML attributes of the input tag:

f.input :email, :input_html => { :value => params[:email] }


sometimes the easiest things come to your mind by asking for them:

approach: do the job in the controller not the view!

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

sorry for bothering you!

0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜