2013-01-31 55 views
0
class House < ActiveRecord::Base 
{ 
    attr_acccessible :title, :address 
} 

house.title的值包括5,5A,8,8/1,16等。即有一個整數前綴,主要決定排序順序,如果它們相同,我需要使用後綴( 「A」或「/ 1」等)等等。如果我把標題排序爲一個字符串,排序順序就不對(「16」<「8/1」)。Ruby on Rails:如何重寫Rails Model中字段的比較方法?

我可以重寫此特定字段的比較運算符嗎?我應該將它存儲爲兩個不同的字段,但是如果有後綴,則使用後綴顯示完整標題?前綴0仍然不能正確解決問題,因爲後綴可以改變長度。

欣賞正確的方式做到這一點的反饋。通過使用

class House < ActiveRecord::Base 
{ 
    attr_acccessible :title, :address 

def is_number? 
    true if Float(self) rescue false 
end 

} 

您可以檢查:

回答

0

你可以宣佈你的方法一樣

is_number?(mystring) 

這只是一個想法,我沒有測試它。