我只需添加friendly_id来美化我的网址。
我收到错误
Couldn't find User with 'id'={:id=>"foo"}
这是我的设置
User.rb
class User < ApplicationRecord
extend FriendlyId
friendly_id :last_name, use: %i[slugged finders]
Users_controller.rb
def find_user
@user = User.friendly.find(id: params[:id])
end
我将此添加到我的用户表
add_column :users, :slug, :string
add_index :users, :slug, unique: true
已正确生成CreateFriendlyIdSlugs表
我在这个问题上遇到了麻烦,我发现所有文档都没有,我无法看到代码失败的地方
thx for help
答案 0 :(得分:2)
您可以使用:
User.friendly.find(params[:id])
或
User.friendly.find_by(id: params[:id])
这个#find_by可以将哈希作为输入,以防你使用哈希参数。
答案 1 :(得分:0)
问题是我如何在我的发现中调用params
答案是
@user = User.friendly.find(params[:id])
而不是
@user = User.friendly.find(id: params[:id])