Я использовал rails 4.2.2, ruby2.5.0, 'friendly_id', '~> 5.1.0'
когда я перетаскиваю friendly_id
в Gemfile,
сначала: bundle
второй: rake db:migrate
третье: в models/user.rb
добавить
extend FriendlyId
friendly_id :name, use: :slugged
в controllers/user_controller.rb
изменить следующим образом:
def show
# @user = User.find(params[:id])
@user = User.friendly.find(params[:id])
# debugger
end
, а затем я rails s
и создал новых пользователей, он отображает неправильно:
NoMethodError in UsersController#create
undefined method `slug' for #<User:0x00007f89fb2d7508>
def create
@user = User.new(user_params)
if @user.save
log_in @user
flash[:success] = "signup success~"
redirect_to @user
Мне пришлось искать это неправильно в stackoverflow, кто-то сказал изменить models/user.rb
как
extend FriendlyId
friendly_id :name, :use => [:slugged, :finders]
Я попытался ответить на этот вопрос, но он также отображает неверный текст:
NoMethodError in UsersController#create
undefined method `slug' for #<User:0x00007f89fb2d7508>
Как я могу решить эти вопросы? Большое спасибо за вашу помощь ~~~