Rails - Использование Posts # Index View для показа только постов «Нравится» - PullRequest
0 голосов
/ 22 марта 2019

Поскольку индексное представление для posts имеет тот же код, у меня есть действие в контроллере сообщений #liked, который сохраняет все понравившиеся сообщения current_user. Я пытаюсь redirect_to posts_path(@posts), но по какой-то причине в индексном представлении по-прежнему @posts возвращаются все сообщения ..? Я уверен, что здесь происходит какая-то магия рельсов.

Я уже проверил свой метод #liked, и он успешно сохраняет только понравившиеся сообщения в @posts, но перенаправление просто не передает @posts из этого действия, а скорее из исходного действия #index.

Идеи

1 Ответ

4 голосов
/ 22 марта 2019

Остин Берк, я предполагаю, что у вас есть следующие два метода в контроллере сообщений:

def posts @posts = Post.all end

И второй метод:

def liked @liked_posts = [post1, post2] end

Вы должны сделать:

def posts @liked_posts = Post.where(liked: true) end

Причина в том, что вы используете redirect_to posts_path(@posts), который вызывает метод индекса контроллера сообщений.Этот метод индекса контроллера сообщений должен взять с собой @liked_posts.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...