私はRuby on Railsの比較で問題があります。フルネームがデータベース内の最後の3つの更新されたレコードであるかどうか確認したい。何らかの理由でデータベース全体をチェックします。Rails - モデルの最後の3つの更新されたレコードの比較
if Playlist.where(fullname: @last_fullname).order(updated_at: :desc).limit(3).exists?
puts "records exists in last 3 updated records"
else
puts "record not found"
end
構文が正しいか、または分割する必要があるかどうかは不明です。それは私にエラーを与えることはありませんが、結果は期待されているものではありません。
EDIT:期待される結果は、レコードが最後に更新さ3内にない場合、それは「見つからない記録」を与えるべきであるということですレコードが最後の3つ以内に更新されている場合は、「最新の3つの更新されたレコードにレコードが存在する」ことを通知する必要があります。それが最後に更新さ3ではありません本家何@last_fullnameがデータベースに存在するとき、私は取得していますが、それは常に与えるということです
「のレコードは、最後の3つの更新されたレコードに存在します」。
データベースに存在しないときに「レコードが見つかりません」と表示されます。
実際の結果と予想される結果を表示してください。 – davidhu2000
'where'句ではなく、最後の3つのレコードクエリの外側で' full_name'を検索する必要があります。 – d34n5