Записи с меткой ‘Models’
Соответствие MySQL и MongoDB запросов
Эта шпоргалка создана для того чтобы упростить переход с SQL баз данных на MongoDB. В ней остались не затронутыми многие особенности и возможности MongoDB, неимеющие аналогов в SQL, такие как MapReduce, например. Или те о которых я незнаю. Это просто список соответствий MySQL запросов и запросов MongoDb.
Два способа ‘eager loading’ в ActiveRecord
Начиная с Rails версии 2.1 в ActiveRecord существует два способа нетерпеливой загрузки (’eager loading’). Первый использует один запрос в котором связывает таблицы оператором JOIN. Второй использует по одному запросу на каждую модель. В Rails версии до 2.1 использовался только первый способ, в версиях начиная с 2.1 используются оба, но второй используется по умолчанию.
Первый способ, обладает некоторыми проблеммами. Он считается медленным, из-за необходимости обрабатывать большое количество избыточных данных (пример 1), особенно при большой вложенности ассоциаций для загрузки, и используется только если в запросе необходимо использовать поля ассоциаций (например в параметре :conditions)
Проверка данных моделей ActiveRecord и функции обратного вызова. Первая часть.
Перевод Active Record Validations and Callbacks
Это руководство описывает цикл жизни объектов Active Record. Вы узнаете, как проверить состояние объектов прежде, чем они попадут в базу данных, и как выполнить собственный код в определенных моментах цикла жизни объекта.
Прочтя это руководство, Вы сможете:
- цикл жизни объектов Active Record
- Использовать встроенные помощники для проверки состояния данных модели
- Создавать свои собственные помощники для проверки состояния данных модели
- Работать с сообщениями об ошибках, которые генерируются в результате этих проверок
- Создавать функции обратного вызова, вызываемые на разные события происходящие в течении жизни объекта
- Создавать специальные классы, которые будут энкапсулировать общее поведение для функций обратного вызова
Создавать классы-наблюдатели, которые будут отвечать за вызов соответствующих методов в ответ на события происходящие в течении жизни объекта
Интерфейс запросов ActiveRecord
Перевод: Active Record Query Interface
Это руководство описывает различные способы получать данные от базы данных, используя ActiveRecord. Прочтя это руководство, Вы сможете:
- Искать записи в базе данных с помощью множества методов и всевозможных условий
- Определять сортировку, требуемые атрибуты, группировку и другие свойства для поиска записей
- Использовать отложенную загрузку, чтобы сократить количество запросов к базе данных, необходимых для поиска
- Использовать динамические методы поиска
- Создавать именованные области видимости (named_scope), для добавления новых средств поиска Ваших моделей
- Проверять существование определенных записей
Выполнять различные расчеты в моделях ActiveRecord

(15 голосов, средний: 4.73 из 5)
(6 голосов, средний: 4.00 из 5)