Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ruby-on-rails-3/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/api/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 友好id范围问题。数字段塞_Ruby On Rails_Ruby On Rails 3_Friendly Id - Fatal编程技术网

Ruby on rails 友好id范围问题。数字段塞

Ruby on rails 友好id范围问题。数字段塞,ruby-on-rails,ruby-on-rails-3,friendly-id,Ruby On Rails,Ruby On Rails 3,Friendly Id,我正在尝试使用友好ID创建更多自定义URL。但是,我想用于slug的列仍然是一个数字。我不想只为slug创建一个单独的列,因为它是相同的 我有很多属于拍卖的东西。 拍卖会有很多拍卖品 一个地段有一个地段编号,这是拍卖所特有的。不过,它在整个桌子上并不是唯一的。这基本上只是一种在每次拍卖中订购物品的方式 我的URL看起来像:/auctions/1/lots/21(/auctions/:auction\u id/lots/:id) 我希望它们是:/auctions/1/lots/1(/auction

我正在尝试使用友好ID创建更多自定义URL。但是,我想用于slug的列仍然是一个数字。我不想只为slug创建一个单独的列,因为它是相同的

我有很多属于拍卖的东西。
拍卖会有很多拍卖品

一个地段有一个
地段编号
,这是拍卖所特有的。不过,它在整个桌子上并不是唯一的。这基本上只是一种在每次拍卖中订购物品的方式

我的URL看起来像:/auctions/1/lots/21(/auctions/:auction\u id/lots/:id)
我希望它们是:/auctions/1/lots/1(/auctions/:auction\u id/lots/:lot\u number)

我在lot.rb中添加了以下内容:

extend FriendlyId
friendly_id :lot_number
它几乎起作用了。它向我展示了很多正确的批号,但拍卖错误。
我在友好的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
中lots.slug=1
?它不应该是lots.auction\u id=1的
吗?
我使用了错误的语法吗?我不知道我哪里出错了


任何帮助都将不胜感激。谢谢。

我认为您应该看看rails中用于查找模型的
from_param
to_param
方法: