这可能是一个非常基本的问题,但如何在表单中创建默认值?
我正在尝试将<%= params [:id]%>作为此表单中的默认隐藏值的页面。
`<%form_for(@revision)do | f | %GT;
<%= f.label :background_title %><br />
<%= f.text_field :background_title %><%= params[:id] %>
<%= f.label :title %><br />
<%= f.text_field :title %>
<%= f.submit 'Create' %>
&lt;%end%&gt;`
感谢。
答案 0 :(得分:1)
表单链接到传递给form_for
的对象,因此在启动表单之前设置对象的值。例如,在控制器中:
@revision.id = params[:id]
然后是以下形式:
<%= f.hidden_field :id %>
但是,我希望这是一个例子,你实际上并没有根据URL参数设置对象的ID(主键)......
答案 1 :(得分:1)
如果您尝试创建新对象,可以在首次实例化新对象时设置默认值
def new
@revision = Revision.new(
:background_title => "Some Background Title",
:title => "Some Title"
)
end
然后自动相应地设置字段的值=)就这么简单; - )