ruby-on-rails - 在 Rails 控制台中按日期查找记录

标签 ruby-on-rails ruby ruby-on-rails-3 activerecord

这发生在 Sqlite 上。我可能遗漏了一些东西,但我无法弄清楚到底是什么。

控制台输出

>> date = Task.first.date
=> Tue, 16 Aug 2011
>> Task.find(:all, :conditions => {:date => date})
=> []
>> Task.find(:all, :conditions => ['date = ?', date])
=> []
>> Task.find(:all, :conditions => ['date IS ?', date])
=> []

架构

create_table "tasks", :force => true do |t|
  t.date     "date"
end

最佳答案

这不是一个完整的答案,但希望能让您放心,因为您的语法是正确的

我开发了一个快速应用程序来测试这个和你所有的检索方法。这也是使用 SQLite 数据库,没有错误。

t = Task.create
 => #<Task id: 1, date: nil, created_at: "2011-08-23 14:32:27", updated_at: "2011-08-23 14:32:27"> 

t.date = "Tue, 16 Aug 2011"
 => "Tue, 16 Aug 2011" 

t.save

date = Task.last.date
 => Tue, 16 Aug 2011 

Task.find(:all, :conditions => {:date => date})
 => [#<Task id: 1, date: "2011-08-16">] 

Task.find(:all, :conditions => ['date = ?', date])
 => [#<Task id: 1, date: "2011-08-16">] 

Task.find(:all, :conditions => ['date IS ?', date])
 => [#<Task id: 1, date: "2011-08-16">] 

我的 schema.rb:

create_table "tasks", :force => true do |t|
  t.date "date"
end

关于ruby-on-rails - 在 Rails 控制台中按日期查找记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7162649/

相关文章:

ruby-on-rails - 通过delayed_job 使用Gibbon gem 时出错?

ruby - Vagrant 与 librarian-chef 通过 ruby​​_build & rbenv 安装 ruby

ruby - 如何将设置保存为外部文件中的散列?

ruby-on-rails - 设计路由: is there a way to remove a route from Rails. application.routes?

ruby-on-rails - Rspec allow_any_instance_of 返回实例 ID

ruby-on-rails - Ruby on Rails 和 Active Record - 查找没有出现在给定 y 中的所有 x

ruby-on-rails - 如何调试设计/管理员?

ruby-on-rails - 如何通过关系显示 has_many 中的唯一记录?

ruby-on-rails - 是什么 !!和 Ruby 中的其他一些东西?

Ruby - 如何从方法名称数组循环执行方法