0

我有一个模型产品,它可以只有一个价格,或者一个与长度相关的价格。我正在努力解决这个问题。产品、价格和长度应该有什么关系?我想要的结果是,当您查看具有不同长度的产品时,您应该能够从下拉列表中选择长度并更新价格。一直坚持这一点,感谢所有帮助!

4

2 回答 2

1

您可以在产品和价格之间创建 1:n 或 an: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 在他的评论中已经说过的那样。

于 2013-04-26T14:00:05.930 回答
0

html

<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 scripy 代码以更新 html dom 中的价格

如果您通知用户已添加价格,那就太好了

于 2013-04-26T15:13:44.813 回答