我有一个控制器正在从联系人表中查找一组联系人。目前,它看起来像这样:如何根据该模型中的方法过滤或查找模型?
@contacts = @campaign.contacts.find(:all, :order => "date_entered ASC")
在contact.rb(模型)的方法是这样的:
def status
return if statuses.empty?
a= statuses.find(:last).status << ' (' << statuses.find(:last).created_at.to_s(:long) << ')'
return a
end
在大多数情况下,如果在“状态”的值,我不再希望在视图中显示它。
现在,状态是多态的。这可能已经是一个愚蠢的想法,但我希望的状态的概念在不同的模式,以适用于:
class Status < ActiveRecord::Base
attr_accessible :statusable_id, :statusable_type, :status
belongs_to :statusable, :polymorphic => true
end
# == Schema Information
#
# Table name: statuses
#
# id :integer not null, primary key
# statusable_id :integer
# statusable_type :string(255)
# status :string(255)
# created_at :datetime
# updated_at :datetime
#
我假设,如果我可以添加条件到@contacts情况下,这将照顾它。但我不知道如何在.find方法的控制器中写入该条件(如果这是正确的方式)。
谢谢。
嗨,但我作为一个条件做什么? 我不确定我会保持has_many ...我*想*这将允许我跟踪任何更改作为状态更改...但不知道。 我也在考虑通过多态来使多个模型全部成为状态......而不是具有单独的属性。但如果我这样做会更简单。 – Angela 2010-07-09 22:51:12