Только что начал кодирование в Ruby on Rails и удалось создать базовую функциональность CRUD для моего приложения.Создание фильтра для активной записи в рельсах
Я могу также перечислить их все. Теперь я хотел бы создать фильтр для взаимодействия с пользователем.
Database Schema
create_table "nades", force: :cascade do |t|
t.string "title"
t.integer "grenade"
t.text "description"
t.datetime "created_at"
t.datetime "updated_at"
t.integer "map_id"
end
«граната» может иметь значение от 1-4, что соответствует определенной гранатой:
[[1,"smoke"], [2,"flash"], [3,"molotov"], [4,"he-grande"]
Теперь я пытаюсь создать фильтр с 4-мя кнопками на панели , Где вы можете включить/выключить каждый наде, чтобы показать или скрыть их в результатах.
[x]Smoke [ ]Flash [ ]Moltov [x]HE
Это должно возвращать только Подствол where grenade = [1,4]
После некоторого чтения он выглядит как область действия было бы неплохо использовать для управления этим. Однако я не уверен, как заставить его работать, как я хочу.
думал сделать что-то вроде:
scope :by_nade, -> grenade { where(grenade: grenade) if status.grenade? }
Однако это только позволяет мне получить 1 определенный тип Нади из базы данных. ли Возможное отправить несколько параметров, как:
http://localhost:3000/nades/?by_nade=1,2 ??
Или это лучшее решение моей проблемы?
Я хотел бы создать модель для «гранаты», чтобы сделать эту форму? – Mellet
Фигурировал, как сделать форму с опцией в виде массива :) – Mellet