每当我尝试使用
时Table.create :a=>"a", :b=>"b"
或
tab=Table.new
tab.a="a"
tab.b="b"
tab.save!
生成
NoMethodError:nil的未定义方法`name':NilClass
我的桌子型号是
class Table < ActiveRecord::Base
set_table_name "table"
set_primary_key "id"
end
答案 0 :(得分:4)
正如大家所说,TABLE
是一个保留词。为了将来的参考,如果确实想要使用这些保留字,在你的sql查询中(我知道你使用的是AR抽象),你必须使用这样的反引号:
SELECT * FROM `TABLE`
但我强烈建议更改您的表名。另外需要注意的是,您不必将主键设置为id
,因为默认情况下rails会使用id
作为PK。
答案 1 :(得分:2)