2012-07-30 32 views
0

我試圖查詢表,如果條件滿足返回值。鏈接到表和返回值

進度模型

class Schedule < ActiveRecord::Base 
    belongs_to :result 
    attr_accessible :result_id 
end 

結果模型

class Result < ActiveRecord::Base 
    has_one :schedule 
    attr_accessible :against, :for, :schedule_id 
end 

schedules.haml

- if schedule.result 
    Result 
- else 
    No Result 

所有即時得到是沒有結果,即使我知道有加載結果調度編號爲

任何幫助將是巨大的感謝

+0

返回從您的schedules.haml上述樣本格式正確? HAML依靠縮進。 「 - else」應該與「 - if」一致。 – steakchaser 2012-07-30 14:29:23

+0

是它的格式正確無誤,所有即時得到是其心不是正確 – 2012-07-30 14:30:58

+0

schedule.result爲零大家項目無結果... – 2012-07-30 14:53:15

回答

1

看看這個網站:

http://rubyquicktips.com/post/3096503536/how-to-check-if-objects-or-relations-exist

你可能想嘗試像

schedule.result.any? 

另外,嘗試:

raise schedule.result.to_yaml 

,看看到底是什麼這一說法

+0

使用'= schedule.results.present?',並在那裏我得到了預期的真實,但現在怎麼來的當我查詢即schedule.results.for它不返回結果? – 2012-07-30 15:49:05

+0

'schedule.result'(不是複數)應該返回一個時間表對象。不過,我不熟悉。對於方法 – Sabar 2012-07-31 00:21:27

+0

的是我的日程表模型中的對象 – 2012-07-31 07:57:20