2011-08-07 17 views
0

ランナースクリプトを作成してモデルを作成しようとしています。私は毎日の9つのスロットにブランク100日をしたいと思いRails 3モデルを作成するスクリプト

class Day < ActiveRecord::Base 
    has_many :slots 
    attr_accessible :available, :day_date, :venue 
end 

class Slot < ActiveRecord::Base 
    belongs_to :day 
end 

:モデルがこれです。 スクリプト/ load_days.rb:8:これは私が次のエラーを取得していますランナースクリプトload_days.rb

Day.transaction do 
    (1..100).each do |i| 
    days = Date.today+i 
    Day.create(:available => "Available", :venue => "Pitch_1", :day_date => days) 
    (1..9).each to |j| 
     hours = days.hours+j 
     id = Day.id 
     Slot.create (:time_slot => hours , :day_id => id) 
    end 
end 
end 

である '' 構文エラー、予期しないtASSOCを、tCOL​​ON2や '[' またはを期待します Slot.create(:time_slot =>時間:day_id => ID)

答えて

2

あなたが代わりにあなたが作成したDayオブジェクトのデークラスに.ID呼びかけている、これは動作するはずです:

Day.transaction do 
    (1..100).each do |i| 
    days = Date.today+i 
    day = Day.create(:available => "Available", :venue => "Pitch_1", :day_date => days) 
    (1..9).each to |j| 
     hours = days.hours+j 
     id = day.id 
     Slot.create (:time_slot => hours , :day_id => id) 
    end 
end 
end 
+0

そこも'(1..9).each | j |' | '(1..9).each | j |'となるような行のようです。 –

+0

これは固定です。 Matthewsのコメントだけでなく、時間=(時間)+ j.hours – kieranwild

+0

を修正して時間= Time.nowを追加する必要がありました – kieranwild

関連する問題