我正在使用Rails和Postgres,在加载和处理数据的过程中,我不得不创建表并手动插入数据(好吧,编写了脚本,但关键是我没有使用Rails/migrations)。我有一个正确定义的模型,但是做的事情如下:Coordinator.find(123)
返回:
Could not log "sql.active_record" event. NoMethodError: undefined method `name' for nil:NilClass
ActiveRecord::StatementInvalid: PG::Error: ERROR: zero-length delimited identifier at or near """"
LINE 1: ...tors".* FROM "coordinators" WHERE "coordinators"."" = $1 LI...
: SELECT "coordinators".* FROM "coordinators" WHERE "coordinators"."" = $1 LIMIT 1
有什么想法吗?
最佳答案
如果我理解正确,那么您的模型上应该缺少一行代码,使您的表和activerecord之间的链接类似于这样:
class Coordinator > ActiveRecord::Base
set_table_name "coordinators"
... # stuff
end
按pcragone编辑:
我只想加入跑步
rake db:migrate
rake db:schema:dump
似乎在不设置表名的情况下修复了该问题