2011-02-05 61 views
1

我想这是一个新手问题,但什么是语法在窗体中显示字段的内容不是作为文本框/区域,而是像标签会出现。rails - 形式到显式非输入类型字段嵌套形式

<% form_for @user do |f| %> 
    <% f.fields_for :user_ingreds do |builder| %> 
     <p> 
      <%= builder.??? %> 
     </p> 
    <% end %> 
<% end%> 

用户has_many :user_ingredsaccepts_nested_attributes_for :user_ingreds

基本上我想列出一个user_ingreds的列表,其中用户不能编辑数据,但可以通过按钮从列表中删除记录。

然而fields_for建设者不UserIngred模型识别直接调用到田间地头(即builder.user_id抛出和错误。

回答

0

如果你想使ingreds的不可编辑列表的一个按钮,而不是删除它们,然后不要做一个形式。

,显示您的数据和创建的link_to指着你删除功能旁边的按钮。

要是你想真正显示的内容你的表单变量,你可以这样访问它:

builder.object.user_i 
+0

嗨,谢谢你的回复。 我希望用户能够从列表中删除,然后在最后保存或取消。所以我认为我需要一个带有_destroy隐藏字段的表单。 你正在建议一个单独的函数,但是如果用户不会提交,直到最后你会如何保持一个引用记录将被删除?谢谢! – nktokyo 2011-02-06 03:00:02