Сортировать по заголовку в выпусках Rails - PullRequest
0 голосов
/ 05 октября 2018

У меня есть приложение со списком фильмов, где я могу добавлять списки фильмов.На странице отображения списка, где отображаются фильмы в этом списке, я хотел бы иметь кнопку, которая сортирует фильмы в списке по названию.В настоящее время я получаю сообщение об ошибке маршрутизации - не найдено ни одного маршрута [POST] "/ lists / 7".Я не уверен, в чем дело.

Модель моего фильма:

class Movie < ApplicationRecord
  has_many :list_movies
  has_many :lists, through: :list_movies

  def self.order_list(sort_order)
    if sort_order == 'title' || sort_order.blank?
      order(title: :asc)
    elsif sort_order == 'rating'
      order(rating: :asc)
    else
      order(created_at: :asc)
    end
  end

end

Действие моего контроллера в lists_controller:

  def show
    @list_movies = @list.movies
    @list_movies.order_list(params[:sort_by])
  end

И моя кнопка включенасписки показывают страницу:

<%= button_to "Sort By Title", list_path(@list, sort_by: "title"), class: 'btn btn-secondary btn-sm btn-space' %>

Я что-то не так с контроллером?

1 Ответ

0 голосов
/ 05 октября 2018

button_to отправляет запрос POST.Возможно, вам следует использовать link_to или method: :get в button_to

<%= button_to "Sort By Title", list_path(@list, sort_by: "title"), method: :get, class: 'btn btn-secondary btn-sm btn-space' %>

ИЛИ

<%= link_to "Sort By Title", list_path(@list, sort_by: "title"), class: 'btn btn-secondary btn-sm btn-space' %>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...