我有一个型号产品,可以只有一个价格,或一个连接到一个长度的价格。我在努力解决这个问题。产品,价格和长度应该有哪些关系?我想要的结果是,当您查看具有不同长度的产品时,您应该能够从下拉列表中选择长度并更新价格。真的被困在这一点,并感谢所有的帮助!
答案 0 :(得分:1)
您可以在产品和价格之间创建1:n或n:m关联。
例如,产品有名称和颜色。 例如,价格有一定数量。
@product = Product.first
if @product.prices.count > 1
# render your dropdown field which contains a list of all @product.prices amounts.
else
# render @product.prices.first amount
end
视图中的渲染和更新可以通过ajax完成,就像@leef在评论中已经说过的那样。
答案 1 :(得分:0)
<ul>
<% @products.each do |product| %>
<li>
<%= link to product.name, add_price_of_product_path(product),remote: true %></li>
<% end %>
</ul>
resources :products do
member do
get :add_price_of
end
end
def add_price_of
#your code to add the price of the chosen product to the total price
end
在 views / products 目录中添加 add_price_of.js.erb 文件 并使用java脚本代码更新html dom中的价格
如果您通知用户价格已添加
,那就太好了