我目前正在使用 NuoDB 和 Ruby on Rails 开发应用程序
我正在使用“nuodb”gem 和“activerecord-nuodb-adapter”连接到数据库,但在执行命令时我似乎收到了日志错误。
例如,当我在操作中运行命令时:
x = GeneralLedger.where("id = ?", params[:id]).first
x.delete
这将在开发日志中输出:
[1m[35mGeneralLedger Load (2.4ms)[0m SELECT `general_ledgers`.* FROM `general_ledgers` WHERE (id = '48') FETCH FIRST 1 ROWS ONLY
[1m[35mSQL (0.3ms)[0m DELETE FROM `general_ledgers` WHERE `general_ledgers`.`id` = 48
这没关系,但是当我执行更直接的方法时:
GeneralLedger.find(params[:id]).delete
我不断收到此错误:
Could not log "sql.active_record" event. NoMethodError: undefined method `name' for 48:Fixnum <------ error
[1m[35mSQL (0.4ms)[0m DELETE FROM `general_ledgers` WHERE `general_ledgers`.`id` = 48
这是我在更新现有记录时遇到的另一个日志错误示例:
Could not log "sql.active_record" event. NoMethodError: undefined method `name' for 21:Fixnum
[1m[36m (0.1ms)[0m [1mbegin transaction[0m
[1m[35m (0.4ms)[0m UPDATE `general_ledgers` SET `accnt_dscr` = 'Other Expenses', `updated_at` = '2014-03-03 14:10:26' WHERE `general_ledgers`.`id` = 21
[1m[36m (0.3ms)[0m [1mcommit transaction[0m
尽管执行了 sql 命令并删除了记录,但我无法获取生成的 SQL 命令。
我尝试使用 sqlite3 进行测试,并且
无法记录“sql.active_record”事件。
错误不显示。
我一直在试图弄清楚这个日志记录错误来自哪里,但我找不到它。我不确定我是否会不理会它,因为命令仍在执行。