2011-02-13 82 views
0

我有一個導軌查詢:爲什麼這總是迴歸真實?

Model.exists?(where(:x => 1, :y => y, :z => z).first) 

這是返回true。我的數據庫中唯一的行將x設置爲0,而不是1.是否有解釋?

忍者編輯:我檢查,似乎沒有任何價值的問題,它總是返回true。這是什麼原因?

+0

你檢查,被執行什麼SQL行嗎?您可以在調試日誌中找到它。 –

+2

model.exists(:x => 1,...)沒有第一個和第一個。還存在嗎?將會返回一個布爾值而不是一行,應該沒有理由。 –

+0

謝謝!把它作爲答案,我會標記它是正確的。我正在使用其他地方的地方,這是我在這裏試圖使用它的原因。 –

回答

1

我想你想要的是沿

Model.where(:x => 1, :y => y, :z => z).exists? 
+0

nate c的評論爲我解決了這個問題,但這也可能。除非你有這樣的優勢,否則我沒有任何意義。 –

+0

主要優點是它更具可讀性。 – Dty

相關問題