@IvanN777

Как правильно в модели rails убирать юзеров (с галочкой отключен)?

У меня есть модель Users
в таблице users есть поле access

которое имеет значения (true,false)

Можно ли на уровне модели отсекать юзеров у которых false
Или везде прописывать нужно where(xxx,access=true)
  • Вопрос задан
  • 2172 просмотра
Решения вопроса 1
viktorvsk
@viktorvsk
class User < ActiveRecord::Base
default_scope ->{ where(access: true) }
...
end


И все юзеры будут по-умолчанию выбираться только с true
А если нужны будут все, то:
User.unscoped

Но вообще, дефолт скоуп не очень хорошая штука. Лучше сделать обычный named scope:
class User < ActiveRecord::Base
scope :with_access, -> { where(access: true) }
...
end

И вызывать как:
User.with_access
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы