Ruby on rails 调用'返回什么;哪里';?

Ruby on rails 调用'返回什么;哪里';?,ruby-on-rails,queryinterface,Ruby On Rails,Queryinterface,我有下面的问题,让我来回答 @post=Post.where(title: "title1") 如果“title1”存在或不存在,那么@post应该是什么?如何检查“where”是否返回任何元素 在我的申请表中,我刚刚打过电话 if(@post) .... else .... end 但它总是进入其他方面尝试: @post=Post.where(title: "title1").first 然后@post将是带有title=“title1”或nil的post对象 返回ActiveRe

我有下面的问题,让我来回答

 @post=Post.where(title: "title1")
如果“title1”存在或不存在,那么
@post
应该是什么?如何检查“where”是否返回任何元素

在我的申请表中,我刚刚打过电话

  if(@post) .... else .... end
但它总是进入其他方面

尝试:

@post=Post.where(title: "title1").first
然后
@post
将是带有
title=“title1”
nil的
post
对象

返回ActiveRecord_关系对象,该对象是根据参数中的条件筛选当前关系的结果

另一种方法是按照@D-side在评论中的建议使用:

@post = Post.find_by(title: "title1")

感谢您提供快速解决方案可选:
find_by
,与
相同,其中
,返回第一次出现或
nil
。谢谢@D-side;我不知道。我把它包括在答案中。