如何在Rails的嵌套属性中渲染局部

时间:2018-07-27 22:04:10

标签: ruby-on-rails nested-attributes partial

所以我目前正在使用Rails配方框(是的,我已经在youtube上观看了12周的12 Rails应用程序),并停留在“添加成分”功能上。

基本上,在“创建新配方”页面中,它具有“添加成分”按钮。它的作用是添加一个新的配方文本字段。我正在按照此视频中的说明进行操作:http://railscasts.com/episodes/403-dynamic-forms,并且遇到了一些问题。

更多信息:我的coffee和applicationhelper文件就像视频中的一样。

关于我的数据库,我的食谱有很多成分,而且食谱 accepts_nested_attributes_for :recipe_ingredients

我的new.html.erb(部分,其余的工作正常):

h3>Ingredients</h3>
<%= render 'field_fields', f: f, temp: temp, recipe_ingredients: 
 recipe_ingredients %>

我的field_fields部分:

<%= f.fields_for :recipe_ingredients do |ff| %>
 <%= ff.label :temp, "Content of ingredient", class: "field-label" %>
 <%= ff.text_field :temp, class: "form-control field-input" %>
<% end %>

对于任何想知道temp是什么的人来说,保存recipe_ingredient是一个临时变量。我先在recipe_ingredient控制器中将其分成三部分,然后再保存到数据库中(出于随机目的)

class RecipeIngredient < ApplicationRecord
 attr_accessor :temp

 before_save :split

 belongs_to :recipe, class_name: Recipe.name

 def split
   self.name, self.amount,
     self.measurement = temp.split(" ", 3)
 end
end

但是最后,它没有用。请帮忙。 (我知道宝石茧,只是不允许在这里使用它:()

0 个答案:

没有答案