class Comment < ActiveRecord::Base
belongs_to :post
belongs_to :user
end
class Post < ActiveRecord::Base
has_many :comments
belongs_to :user
end
class User < ActiveRecord::Base
has_many :posts
has_many :comments
end
我想拉出发布数据,同时渴望加载用户和评论数据,以及与不加载评论已被封锁(评论中的TINYINT字段的限制表)。当有以下工作的意见存在,但它造成的问题时,我加载没有任何评论的帖子:Rails的MySQL包括限制
@post = Post.find(params[:id],
:include => {:comments => :user},
:conditions => "comments.blocked = 0")
我如何能运行此查询任何建议,使得其工作时,没有评论存在?谢谢。
的ActiveRecord :: RecordNotFound在PostsController#显示 找不到邮政与ID = 31,(comments.blocked = 0) – 2010-11-01 19:15:30
感谢这个!第一个仍然给我同样的错误,虽然我很确定你的第二个建议可以在Rails 3上运行,但我运行的是Rails 2.3.5,并在“where”方法上出现错误。 但是,我将尝试您的建议:连接或named_scope。我对Rails有点新鲜,而且我一定会被看上去很神奇的:include包含...... :-) – 2010-11-03 15:02:07