2013-02-17 21 views
2

我正在嘗試使用Friendly ID來創建更多自定義網址。但是,我想用於slu column的列仍然是一個數字。我不想爲slug創建一個單獨的列,因爲它是完全相同的。Friendly_id範圍問題。數字slu

我有一個拍品屬於一個拍賣
拍賣有很多很多(商品出售)。

地塊具有lot_number,這是唯一的一個拍賣。不過,這在整個表格中並不是唯一的。這基本上只是在每次拍賣中訂購拍品的一種方式。/auctions/1/lots/21(/ auctions /:auction_id/lots /:id)
我希望他們是:/ auctions/1/lots/1(/ auctions/auction_id /手/:lot_number)

我增加了以下內容lot.rb

extend FriendlyId 
friendly_id :lot_number 

它幾乎工作。它顯示了我很多正確的批號,但錯誤的拍賣。
我閱讀了有關Friendly ID文檔的範圍,聽起來很完美。我可以對範圍拍賣很多...
所以,我想:

extend FriendlyId 
friendly_id :lot_number, :use => :scoped, :scope => :auction_id 

現在我看到了以下錯誤:

SQLite3::SQLException: no such column: lots.slug: SELECT "lots".* FROM "lots" WHERE "lots"."slug" = '1' LIMIT 1 

爲什麼是SQL WHERE lots.slug = 1?不應該是WHERE lots.auction_id = 1
我使用錯誤的語法嗎?不知道我出錯的地方。

任何幫助,將不勝感激。謝謝。

回答