爲了更好地理解Rails,我正在搞一個測試/練習項目。Ruby on Rails:檢查店鋪擁有的產品數量
在我來說,我有三個型號:商店,用戶和產品。
一家店可以有三種類型:基本,中,大。基本可以有10個產品最大,中50,大型100
我試圖驗證此類型的數據,網店的類型和檢查創建一個新產品的時候有多少產品擁有。
到目前爲止,我想出了這個代碼(在shop.rb),但它不工作:
def lol
account = Shop.find_by_sql "SELECT account FROM shops WHERE user_id = 4 LIMIT 1"
products = Product.count_by_sql "SELECT COUNT(*) FROM products WHERE shop_id = 13"
if account = 1 && products >= 10
raise "message"
elsif account = 2 && products >= 50
raise "message"
else account = 3 && products >= 100
raise "message"
end
end
我甚至不知道我背後的解決方案的邏輯是正確的還是什麼。也許我應該驗證使用
has_many
及其「大小」的方法?我不知道。 :)
OP給出了一個「賬戶」變量來確定特定商店類型與所含產品數量的有效性。你給出的不是驗證,而是一種動態確定類型的方法。 – 2010-10-12 17:46:37
你說得對,我應該更好地閱讀OP。 – Mischa 2010-10-13 05:31:01
添加了驗證的建議,但我個人會選擇Dave的解決方案。 – Mischa 2010-10-14 01:39:17