我正在尝试让我的表单为文本字段赋值。我有一个定义current_user的帮助文件。我希望text_field:name为current_user.name。
<%= form_for @message, :url => contact_path do |form| %>
<%= form.text_field :name = current_user.name %>
<%= form.text_field :email = current_user.email %>
...
我试过#{name},params,你如何分配这个值?
答案 0 :(得分:3)
您应该在控制器中执行此操作
例如:(见第3行)
def update
@message = Message.find(params[:id])
@message.name = current_user.name ## HERE
@message.update_attributes
end
除非你的意思是你希望它在页面渲染时成为默认值,在这种情况下:
<%= form.text_field :name, value: current_user.name %>
或者如果你喜欢
<%= form.text_field :name, placeholder: current_user.name %>
答案 1 :(得分:1)
将value
选项添加到text_field
帮助器中:
<%= form_for @message, :url => contact_path do |form| %>
<%= form.text_field :name, value: current_user.name %>
<%= form.text_field :email, value: current_user.email %>
...