我有一个具有很多价格的Fabric模型。
Class Fabric < ActiveRecord::Base
has_many :prices, :as => :priceable, :dependent => :destroy
end
class Price < ActiveRecord::Base
attr_accessible :amount,
:quoted_date,
:valid_till
belongs_to :priceable, :polymorphic => true
end
如何添加关联以提供latest_price?
我需要在搜索结果搜索表单中为Fabrics添加价格范围搜索条件,该搜索表单应返回给定范围内的latest_price_amount的所有结构,其中LatestPrice是具有最近quoted_date的价格。
<%= search_form_for @search do |f| %>
<%= f.text_field :latest_price_amount_gteq %>
<%= f.text_field :latest_price_amount_lteq %>
<%= f.submit "Search" %>
我已经研究过this question,第一种方法对我来说似乎很好,但是我可以用has_one
替换belongs_to
,因为Fabric可能有也可能没有价格?如果没有,你能否提出更好的解决方案。
感谢。