Не удалось зарегистрировать событие "sql.active_record". NoMethodError: неопределенный метод `name'

В настоящее время я занимаюсь разработкой приложения с использованием NuoDB и Ruby on Rails

Я использую гем 'nuodb' и '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".

ошибка не появляется

Я пытался выяснить, откуда происходит эта ошибка, и я не могу ее найти. Я не уверен, что оставил бы это в покое, поскольку команды все еще выполняются.

1 ответ

Это известная проблема с драйвером, которая отслеживается здесь; GitHub: GeneralLedger.find (params [: id]). Delete throws ошибка при записи удаления в ActiveRecord

На ваш взгляд, ошибка не препятствует выполнению действия, это просто вывод в журналы, который пропускается.

Я ожидаю, что дальнейшие обновления будут опубликованы по ссылке GitHub выше.

Другие вопросы по тегам