我的路线中有以下内容:
match '/car-rentals(/:address)' => 'search#search', via: :get
我可以访问:
本地主机:3000 /汽车出租/蒙特利尔
显示蒙特利尔所有可用的汽车。
当我输入:localhost:3000/car-rentals/Montreal Quebec
我的网址变为localhost:3000/car-rentals/Montreal%20quebec
我希望它是:localhost:3000/car-rentals/montreal-quebec
我尝试在我的模型中使用to_param
。
class Search < ActiveRecord::Base
def to_param
"#{address.parameterize}"
end
end
任何其他方法来实现这一目标?
另外值得一提。当我在binding.pry
中粘贴to_param
并重新加载页面时,它不会停止该过程,因此无法到达。
def to_param
binding.pry # on page load, not getting here
"#{address.parameterize}"
end
提前致谢!
答案 0 :(得分:1)
有几个宝石可以为SEO友好网址生成slu ..
我过去曾使用https://github.com/norman/friendly_id,但效果很好。它还有非常有用的文档。