草庐IT

ActiveRecord3

全部标签

activerecord - 如何使用 Active Record 在 Sinatra 中静音 SQLite3 记录器?

guard输出窗口填满D,[2012-11-19T18:36:30.391459#53057]DEBUG--:(0.1ms)begintransactionD,[2012-11-19T18:36:30.392668#53057]DEBUG--:SQL(0.4ms)INSERTINTO"foo"("created_at","id","foo","foo","updated_at","value")VALUES(?,?,?,?,?,?)[["created_at",2012-11-1918:36:30-0800],["id",4],["bar",2],["foo",12],["update

ruby-on-rails - activerecord 内存共享缓存

是否可以通过activerecord使用sqlite3的“共享缓存”?(参见:http://www.sqlite.org/inmemorydb.html)我在JRubySwing应用程序中使用独立的activerecord(没有rails),其中涉及一些工作线程。问题:只有主线程可以访问数据,因为每个线程都会重建一个新的内存数据库。所以我得到了[SQLITE_ERROR]SQL错误或缺少数据库(没有这样的表:insert_model_name)来自任何地方,除了主线程。有解决方法还是我错过了什么?(我使用最新版本的jruby、java和gems)提前致谢!到目前为止的数据库配置:htt

ruby-on-rails - activerecord 内存共享缓存

是否可以通过activerecord使用sqlite3的“共享缓存”?(参见:http://www.sqlite.org/inmemorydb.html)我在JRubySwing应用程序中使用独立的activerecord(没有rails),其中涉及一些工作线程。问题:只有主线程可以访问数据,因为每个线程都会重建一个新的内存数据库。所以我得到了[SQLITE_ERROR]SQL错误或缺少数据库(没有这样的表:insert_model_name)来自任何地方,除了主线程。有解决方法还是我错过了什么?(我使用最新版本的jruby、java和gems)提前致谢!到目前为止的数据库配置:htt

sql - 如何在 Rails 中链接原始 SQL 查询或如何从 Rails 中的原始 SQL 查询返回 ActiveRecord_Relation?

如何运行原始sql查询并返回ActiveRecord_Relation实例?在sqlite3db和Rails4.2上,ActiveRecords::Base.exec_query(sql)返回一个ActiveRecord_Result实例。ActiveRecords::Base.execute(sql)返回一个数组。这很麻烦,因为我无法在返回的对象上运行后续的“ActiveRecord查询”或原始sql查询。更一般地说,我想知道如何在Rails中链接“复杂”的sql查询。我所说的复杂是指我无法通过ActiveRecords提供的“ORM方法”找到一种方法。通过链接,我的意思是出于性能原

sql - 如何在 Rails 中链接原始 SQL 查询或如何从 Rails 中的原始 SQL 查询返回 ActiveRecord_Relation?

如何运行原始sql查询并返回ActiveRecord_Relation实例?在sqlite3db和Rails4.2上,ActiveRecords::Base.exec_query(sql)返回一个ActiveRecord_Result实例。ActiveRecords::Base.execute(sql)返回一个数组。这很麻烦,因为我无法在返回的对象上运行后续的“ActiveRecord查询”或原始sql查询。更一般地说,我想知道如何在Rails中链接“复杂”的sql查询。我所说的复杂是指我无法通过ActiveRecords提供的“ORM方法”找到一种方法。通过链接,我的意思是出于性能原

ruby - 尝试保存大(ish)整数值时出现错误指示数字为 "out of range for ActiveRecord::Type::Integer with limit 4"

我在我的Ruby应用程序中使用SQLite+ActiveRecord,这是我在尝试将大数字写入整数字段时遇到的错误:1428584647765isoutofrangeforActiveRecord::Type::Integerwithlimit4但是根据SQLite文档:Thevalueisasignedinteger,storedin1,2,3,4,6,or8bytesdependingonthemagnitudeofthevalue.8个字节足以存储整数1428584647765,那么为什么ActiveRecord会给我一个错误?为什么它认为这是一个4字节的字段?

ruby - 尝试保存大(ish)整数值时出现错误指示数字为 "out of range for ActiveRecord::Type::Integer with limit 4"

我在我的Ruby应用程序中使用SQLite+ActiveRecord,这是我在尝试将大数字写入整数字段时遇到的错误:1428584647765isoutofrangeforActiveRecord::Type::Integerwithlimit4但是根据SQLite文档:Thevalueisasignedinteger,storedin1,2,3,4,6,or8bytesdependingonthemagnitudeofthevalue.8个字节足以存储整数1428584647765,那么为什么ActiveRecord会给我一个错误?为什么它认为这是一个4字节的字段?

ruby-on-rails - 按指定顺序按 id 查找 ActiveRecord 对象的简洁方法

我想在给定一组id的情况下获得一组ActiveRecord对象。我以为Object.find([5,2,3])将返回一个数组,依次为对象5、对象2、对象3,但我得到的数组顺序为对象2、对象3,然后是对象5。ActiveRecord库findmethodAPI提到您不应该按照提供的顺序期望它(其他文档没有给出此警告)。Findbyarrayofidsinthesameorder?中给出了一个潜在的解决方案,但顺序选项似乎对SQLite无效。我可以自己编写一些ruby​​代码来对对象进行排序(要么比较简单但缩放比例不佳,要么缩放比例更好但更复杂),但是有更好的方法吗?

ruby-on-rails - 按指定顺序按 id 查找 ActiveRecord 对象的简洁方法

我想在给定一组id的情况下获得一组ActiveRecord对象。我以为Object.find([5,2,3])将返回一个数组,依次为对象5、对象2、对象3,但我得到的数组顺序为对象2、对象3,然后是对象5。ActiveRecord库findmethodAPI提到您不应该按照提供的顺序期望它(其他文档没有给出此警告)。Findbyarrayofidsinthesameorder?中给出了一个潜在的解决方案,但顺序选项似乎对SQLite无效。我可以自己编写一些ruby​​代码来对对象进行排序(要么比较简单但缩放比例不佳,要么缩放比例更好但更复杂),但是有更好的方法吗?

ruby - 如何增加 ActiveRecord 中的最大池大小?

我得到错误:Error"ActiveRecord::ConnectionTimeoutError-couldnotobtainadatabaseconnectionwithin5seconds.Themaxpoolsizeiscurrently5;considerincreasingit."如何增加最大池大小?#DBCONNECTIONDB_CONN=ActiveRecord::Base.establish_connection(:adapter=>"sqlite3",:dbfile=>DB_FILE) 最佳答案 config/da