У меня есть сайт, на котором пользователи отправляют заявки, и все они отображаются на главной странице. Я хочу поставить маленькую кнопку на каждую отправку, которая говорит "скрыть" ... Если пользователь щелкает эту ссылку, он больше не будет видеть отправку в любом месте на сайте.
В настоящее время мое индексное действие для отправки просто:
def index
@submissions = Submission.order("created_at DESC")
end
Мой план состоял в том, чтобы создать модель, спрятанную так:
rails g model hidden user_id:integer submission_id:integer
Затем создается скрытый экземпляр модели, когда пользователь что-то скрывает. Затем я должен обновить свой контроллер до чего-то вроде:
def index
@submissions = Submission.order("created_at DESC").includes("hidden").where("hiddens.user_id IS NULL")
end
Хотя это, очевидно, не сработает.
У меня есть хорошая схема базы данных для этого? Какой самый эффективный запрос я могу сделать, чтобы убедиться, что я не отображаю скрытые сообщения?
Спасибо!