的最新3条更新记录的对比我遇到了Ruby on Rails中的比较问题。我想检查一个全名是否是数据库中最近3次更新的记录。由于某种原因,它会检查整个数据库。Rails - 型号
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
不确定语法是正确还是应该分解。它不会给我一个错误,但结果不是预期的。
编辑:预期的结果是,当记录不在最后3更新时,它应该给“记录未找到”。如果记录在最后3次更新之内,它应该给出“记录存在于最近3次更新的记录中”。
当@last_fullname存在于数据库中时,我得到的结果是,它总是会给出“最近3次更新记录中存在记录”,尽管它不在最后3次更新中。
我只在数据库中没有找到“记录未找到”的情况。
有什么想法?
请向我们展示实际结果和预期结果。 – davidhu2000
您应该在最后3条记录查询之外搜索“full_name”,而不是在where子句中搜索。 – d34n5