2016-06-11 7 views

ответ

1

with_scope теперь называется scoping в новых версиях Rails. with_exclusive_scope должно быть unscoped. Оба метода принимают блок, чтобы ваш код работал с ними нормально.

См. Документы для scoping и unscoped для получения дополнительной информации.

Обновление: Метод scoping не работает, если вызван в самом классе. Он должен быть вызван уже в области видимости (в отличие от unscoped, который работает на классной модели). Я бы первый добавить «безвредную» область видимости all (который выбирает все записи и, таким образом, веду себя так же, как голая модель класс AuditArea) к выбрать так, что оба варианты send работы:

AuditArea.all.send(query_options[:include_retired] ? :unscoped : :scoping) { 
    # ... 
} 
+0

незаданных работ, но обзорного все еще дает ошибку * NoMethodError Исключение: неопределенный метод 'scoping 'для –

+0

Можете ли вы вставить полную ошибку? 'scoping' ** - ** [определенный метод] (https://github.com/rails/rails/blob/v4.1.9/activerecord/lib/active_record/relation.rb#L290) в Rails 4.1.9. – BoraMa

+0

*** NoMethodError Исключение: неопределенный метод 'scoping 'для # <Класс: 0x00000008174410> –

 Смежные вопросы

  • Нет связанных вопросов^_^