Ruby on rails find方法在RubyonRails中找不到它应该找到的内容

Ruby on rails find方法在RubyonRails中找不到它应该找到的内容,ruby-on-rails,activerecord,Ruby On Rails,Activerecord,我从ActiveRecord find方法中获得了最奇怪的行为。我正在尝试查找更新的_在日期处的记录,但它正在返回[]。 代码如下: @updated = get_current_user.ideas.all(:conditions => {:updated_at => '2013-04-20 03:30:34'}) 下面是应该返回的记录: #<Idea id: 3, title: "An app that tracks useage", status: "pr

我从ActiveRecord find方法中获得了最奇怪的行为。我正在尝试查找更新的_在日期处的记录,但它正在返回[]。 代码如下:

      @updated = get_current_user.ideas.all(:conditions => {:updated_at => '2013-04-20 03:30:34'})
下面是应该返回的记录:

 #<Idea id: 3, title: "An app that tracks useage", status: "prototype", user_id: 1, updated_at: "2013-04-20 03:30:34"

#您的用户是否与想法有关联?从您的记录中,我看不到用户id。我做了相同的查询,我可以检索我的答案。此外,您还可以检查“获取当前用户”是否正确。

尝试以下操作:

@updated = get_current_user.ideas.where(:updated_at => '2013-04-20 03:30:34').all

似乎所有(:conditions=>'')都很难记住,并且在较新的rails版本中会被弃用。我不确定。不管怎样,我更喜欢“where”方法而不是“all”

问题是我忘记了datetime实际上是一个datetime,并试图将其与字符串进行比较。这是行不通的。谢谢大家的帮助

谢谢,我试过那个代码,但仍然没有得到任何回报:(
我让它工作了大约2秒钟
你在这两秒钟内更新了记录吗?我不这么认为。我进入控制台,仔细检查了值。是的。有一个用户id,但终端不允许我复制/粘贴,我太懒了,写不出来。而且,正确地获取当前用户返回值。谢谢恩,这很奇怪:你能试试吗?@updated=get_current_user.ideas.where(更新时间:'2013-04-20 03:30:34')和get_current_user.ideas,它将返回一个数组edy。我尝试了前者。我检查了get_current_user.ideas是否确实返回了一个数组。事实上,我从返回的数组中要返回的项目复制了更新的_at值,并将其粘贴到我的where语句中。我甚至尝试直接在数据库上搜索,得到了没有返回直接在数据库中搜索也没有返回?没有记录存在?尝试重新启动服务器控制台或其他>。没有这样的运气。仍然得到零