1

次の質問があります。

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

@post「title1」が存在するかどうかはどうすればよいですか? 「where」が要素を返したかどうかを確認するにはどうすればよいですか?

私のアプリケーションでは、私はちょうど呼び出しました

  if(@post) .... else .... end

しかし、それは常に他のものに入ります

4

1 に答える 1

0

試す:

@post=Post.where(title: "title1").first

次に、またはを持つオブジェクト@postのいずれかになります。Posttitle = "title1"nil

.whereは ActiveRecord_Relation オブジェクトを返します。これは、引数の条件に従って現在のリレーションをフィルタリングした結果です。

別の方法は、コメントの @D-side で提案されているようにfind_byを使用することです。

@post = Post.find_by(title: "title1")
于 2015-05-25T22:52:46.277 に答える