Ruby на Rails / Ransack: фильтровать все объекты, принадлежащие текущему пользователю - PullRequest
0 голосов
/ 03 апреля 2020

Скажем, у меня есть список сообщений, которые я хочу отфильтровать с помощью Ransack. Мой шаблон представления выглядит следующим образом (я использую simple_form):

posts.haml:

= search_form_for @q, class: "form" do |f|
  # this works if enabled but sure enough fails if disabled
  # = f.input :user_id_eq, as: :boolean, value: current_user.id, label: "Show only my posts"
  = f.input :title_cont, required: false
  %button{type: "submit"} Search

user.rb

class User < ApplicationRecord
  has_many :posts
end

post.rb

class Post < ApplicationRecord
  belongs_to :user
end

[править: добавлены модели и наполовину рабочее решение]

Теперь я хочу добавить флажок для фильтрации сообщений текущего пользователя, например так: [ ] Show only my posts.
У меня есть ассоциация на месте: пользователь has_many posts / post posts_to user

Как я могу добавить флажок в мою форму для поиска, чтобы отфильтровать все сообщения, связанные с текущим пользователем?

...