就像 rails 中的动态查找器方法一样,有没有办法为关联模型提供动态查找器方法?
考虑以下模型
class User
attr_accessible :name, :phone_no
has_many :notes
end
class Note
belongs_to :user
attr_acccessible :note
end
如何从用户对象中调用注释属性的动态查找器?
就像 rails 中的动态查找器方法一样,有没有办法为关联模型提供动态查找器方法?
考虑以下模型
class User
attr_accessible :name, :phone_no
has_many :notes
end
class Note
belongs_to :user
attr_acccessible :note
end
如何从用户对象中调用注释属性的动态查找器?
范围是类方法,因此 User.scope_name (有关范围的更多信息:http://guides.rubyonrails.org/active_record_querying.html#scopes )。如果您想找到属于该用户对象的特定注释,您可以定义一个实例方法 - 如下所示:
def note_with_content(content_string)
self.notes.where(:content => "#{content_string}")
end
或者
def last_note
self.notes.last
end
并通过以下方式使用它:
@user.note_with_content("This is a note")
@user.last_note