voip_phone
이라는 모델에 schedule
이라는 속성이 있습니다.이 문자는 언제 어떤 사람이 전화를 사용하고 있는지 추적합니다. 여기에 schedule
의 예 레일 : 객체에 대한 변경 사항이 적용되지 않습니다
def add_shift(days, person_id, time_from, time_to)
return false if shift_overlap?(days, time_from, time_to)
days.each do |d|
insert_point = self.schedule.index(d)+4
self.schedule.insert(
insert_point, [person_id.to_s, time_from, time_to].join(",") + ";")
end
save!
end
는 상관없이 내가 뭘, 내가이 방법을 작동시킬 수 없습니다 :
다음
"mon{}sun{}sat{}tue{13,08:45,15:15;}wed{13,09:00,17:30;}thu{}fri{}"
이 작동하지 않습니다 모델 코드입니다. 다음은 콘솔에서 읽은 것입니다.
v = VoipPhone.find(5)
=> blah, blah, blah
v.add_shift(["thu", "fri"], 13, "08:45", "15:15")
=> true
이 방법은 효과가 있지만 변경 사항이 적용되지 않습니다. v.schedule
으로 전화하면 새로운 일정이 표시되지만 VoipPhone.find(5).schedule
으로 전화하면 이전 일정이 계속 표시됩니다. v.save
을 호출하면 true가 반환되지만 변경 사항은 여전히 적용되지 않습니다!
karmaless 영혼에게 제공 될 수있는 모든 도움을 주시면 감사하겠습니다 :) 당신은 2.3 AFAIR
보기를 레일에 도입 된 "더러운 속성"최적화에 직면 해
감사합니다, 데이빗! self.schedule_will_change! 트릭을 완벽하게 했어! – muirbot