我正在使用带有PostGre数据库的Rails 4.2.3。我有这个文件作为我的“rake db:seed”命令
的一部分运行await WriteImmoListAsync();
await ReadImmoListAsync();
await WriteImmoListAsync();
await ReadImmoListAsync();
这是描述的表......
Country.delete_all
Country.connection.execute("ALTER SEQUENCE countries_id_seq RESTART WITH 1")
Country.create(:id=>1,:iso=>"AD",:name=>"Andorra")
Country.create(:id=>2,:iso=>"AE",:name=>"United Arab Emirates")
Country.create(:id=>3,:iso=>"AF",:name=>"Afghanistan")
Country.create(:id=>4,:iso=>"AG",:name=>"Antigua and Barbuda")
Country.create(:id=>5,:iso=>"AI",:name=>"Anguilla")
Country.create(:id=>6,:iso=>"AL",:name=>"Albania")
…
但是在运行上述文件后,会创建一堆行,但iso和name字段为空。这是我的app / model / country.rb文件
\d countries;
Table "public.countries"
Column | Type | Modifiers
--------+-------------------+--------------------------------------------------------
id | integer | not null default nextval('countries_id_seq'::regclass)
iso | character varying |
name | character varying |
Indexes:
"countries_pkey" PRIMARY KEY, btree (id)
感谢您的帮助, - 戴夫
答案 0 :(得分:0)
您应该完全删除attr_accessor
行。 ActiveRecord将根据表列为您定义这些方法。通过使用该行,您基本上可以使用不接触数据库的版本覆盖内置的ActiveRecord方法。