Používam Ruby 2.1.5 a Rails 4.2.1 Snažím sa vložiť niektoré položky statickej databázy do tabuľky sqlite3 pomocou seeds.rb. Keď spustím rake db: seed, dostanem správny počet riadkov s príslušnými stĺpcami časových pečiatok, ale skutočný stĺpec údajov, názov je Meno nie je obsadené. Meno sa vytlačí vo vnútri slučky.
db / seed.rb
for g in ["Harmony", "Melody", "Technique", "Soloing"]
Group.create(name: g)
put(g)
end
app / models / group.rb:
class Group < ActiveRecord::Base
attr_accessor :name
has_many :group2exercise
has_many :exercises, through :group2exercise
end
sqlite3 (kopírovanie vytvorenia z prehliadača SQLDB)
CREATE TABLE "groups"("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "name" varchar, "created_at" datetime NOT NULL, "updated_at" datetime NOT NULL)
odpovede:
2 pre odpoveď č. 1Malo by to fungovať, ak riadok odstránite
attr_accessor :name
Tým, že attr_accessor
, vytvorí sa nová množina metód getteru a setteru, v tomto prípade nadradené tomu, čo poskytla spoločnosť Rails.