Задать вопрос
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

Как решить проблему?
  • Вопрос задан
  • 342 просмотра
Подписаться 3 Оценить Комментировать
Помогут разобраться в теме Все курсы
  • Code Basics
    Ruby для начинающих
    1 месяц
    Далее
  • Skillbox
    Ruby on Rails с нуля
    10 месяцев
    Далее
  • Хекслет
    Разработчик на Ruby on Rails
    5 месяцев
    Далее
Решения вопроса 1
malworm
@malworm Автор вопроса
Решил проблему, добавив :finders в массив use:
Теперь это выглядит так
class Post < ActiveRecord::Base
  extend FriendlyId
  friendly_id :title, use: [:slugged, :finders] 
. . . 
end

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

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

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

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