Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
在 Rails 中,我可以说:
Post.find_by_user_id 1
但是有什么办法可以说像
Post.find_by_user User.first
?
没什么大不了的,但会更干净一些。
你可以翻转到:
User.first.posts
或者,在帖子上使用“范围”......这样你就可以:
class Post < ActiveRecord::Base scope :for_user, lambda{|user| where(:user_id => user.id) } end
你会使用:
user = User.first Post.for_user(user)
这个怎么样: