/
spirzen
/
it-code-examples
Обзор
Документация
Войти
/
spirzen
/
it-code-examples
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
examples/ruby/ruby-511-16-010/main.rb
13 строк
2 KB
Spirzen
Code migration pack
09 июн 2026, 01:41
09 июн 2026, 01:41
cebc284
Код
Авторство
О чём код?
Разбор: - Фрагмент показывает конкретный сценарий, который стартует со строки `Теперь `product.price` — объект `Money`, а в БД хранится `INTEGER`. Преимущества:` и задаёт контекст выполнения. - Ключевые элементы блока: `product`, `price`, `Money`, `INTEGER`, `Scope`, они определяют основную логику примера. - По шагам код выполняется так: `Теперь `product.price` — объект `Money`, а в БД хранится `INTEGER`. ` -> `- вынос логики преобразования из модели;` -> `- переиспользование типа в разных моделях;` -> `- поддержка валидаций и сериализации.`. - Практически важно добавить обработку ошибок и явные проверки входа, чтобы исключить скрытые падения в рантайме. - Типичная ошибка при развитии такого кода — смешивать бизнес-правила и инфраструктурные детали в одном месте; лучше разделять ответственность. class User < ActiveRecord::Base scope :active, -> { where(active: true) } scope :by_name, ->(name) { where('name ILIKE ?', "%#{name}%") } end User.active.by_name('Тимур')