malworm
@malworm

Почему не работает friendly_id?

добавил гем
gem 'friendly_id', '~> 5.1'

выполнил
rails generate friendly_id
rails generate migration add_slug_to_posts slug:string:uniq

model
class Post < ActiveRecord::Base
  extend FriendlyId
  friendly_id :title, use: :slugged,
. . . 
end

controller
class PostsController < ApplicationController
   def show
    @post = Post.friendly.find(params[:id])
    @postCreator = User.find(@post.user_id)
  end
. . .
end

Парадоксальным является то, что через консоль все работает
eb87736674444506891bb92ab2bfbbc9.png
И вот

32e60db957a14c6fa98082f2561ec750.png

Как решить проблему?
  • Вопрос задан
  • 337 просмотров
Решения вопроса 1
malworm
@malworm Автор вопроса
Решил проблему, добавив :finders в массив use:
Теперь это выглядит так
class Post < ActiveRecord::Base
  extend FriendlyId
  friendly_id :title, use: [:slugged, :finders] 
. . . 
end

Также убрал .friendly из экшена и использую просто
Post.find(params[:id])

Не совсем понимаю как, но это помогло.
Надеюсь, кому-то будет полезно.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы