1

我正在使用 Rails 和 Postgres,在加载和处理数据的过程中,我必须手动创建表并插入数据(好吧,脚本化,但重点是我没有使用 Rails/迁移)。我有一个正确定义的模型,但做的事情如下:

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 

有什么想法吗?

4

1 回答 1

0

如果我对您的理解正确,您的模型上应该缺少一行,使您的表和 activerecord 之间建立了这种链接,有点像这样:

class Coordinator > ActiveRecord::Base
  set_table_name "coordinators"
  ... # stuff
end

pcragone 编辑:

我只想添加那个运行

rake db:migrate
rake db:schema:dump

似乎在没有设置表名的情况下解决了问题

于 2012-12-21T00:39:51.653 回答