我有2个模型,客户端和client_prices,我想在客户端的显示页面中有2个客户价格嵌套表单部分。 1个嵌套表单用于非自定义价格,另一个用于自定义价格。非自定义(自定义== false)价格只能使用“自定义”属性进行编辑。 “自定义价格”将具有可编辑的所有属性。
我尝试了一些不同的方法,但我不知道在哪里放置条件逻辑以使其正常工作。我正在使用simple_form来生成表单,但我没有和它结婚。
控制器
class Client < ActiveRecord::Base
attr_accessible :name, :client_prices_attributes
has_many :client_prices
accepts_nested_attributes_for :client_prices, :allow_destroy => true
end
class ClientPrice < ActiveRecord::Base
attr_accessible :client_id, :price, :visit_type, :id, :custom
belongs_to :client
belongs_to :default_price
end
客户端显示页面
<%= simple_nested_form_for @client do |f| %>
<%= f.fields_for :client_prices do |def_price_form| %>
non-custom prices form here
<%end%>
<%= f.fields_for :client_prices do |def_price_form| %>
custom prices form here
<%end%>
<%end%>
答案 0 :(得分:0)
尝试以下方法:
<%= simple_nested_form_for @client do |f| %>
<%= f.fields_for :client_prices do |def_price_form| %>
<%= if def_price_form.object.custom %>
Here you fields for custom form
<% end %>
<% end %>
<% end %>