我正在使用Ruby 2.1.5和Rails 4.2.1我试图通过seeds.rb将一些静态数据库条目放入sqlite3表中。当我运行rake db:seed时,我获得了使用适当的时间戳列插入的正确行数,但实际数据列name没有被填充。名称正在循环中打印出来。
分贝/ seed.rb
for g in ['Harmony', 'Melody', 'Technique', 'Soloing']
Group.create(name: g)
put(g)
end
应用程序/模型/ group.rb:
class Group < ActiveRecord::Base
attr_accessor :name
has_many :group2exercise
has_many :exercises, through :group2exercise
end
sqlite3(从SQLDB浏览器复制create)
CREATE TABLE "groups"("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "name" varchar, "created_at" datetime NOT NULL, "updated_at" datetime NOT NULL)
答案 0 :(得分:2)
如果删除行
,它应该有效attr_accessor :name
通过使用attr_accessor
,可以创建一组新的getter和setter方法,在这种情况下会覆盖Rails提供的内容。