/
spirzen
/
it-code-examples
Обзор
Документация
Войти
/
spirzen
/
it-code-examples
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
examples/ruby/ruby-511-16-009/main.rb
27 строк
2 KB
Spirzen
Code migration pack
09 июн 2026, 01:41
09 июн 2026, 01:41
cebc284
Код
Авторство
О чём код?
Разбор: - Фрагмент показывает конкретный сценарий, который стартует со строки `Это критически важно для:` и задаёт контекст выполнения. - Ключевые элементы блока: `scope`, `enum`, они определяют основную логику примера. - По шагам код выполняется так: `Это критически важно для:` -> `- инвалидации кэшей (например, `Rails.cache.fetch("post/#{post.id}")` -> `- сортировки по времени последней активности;` -> `- интеграций, отслеживающих изменения через `updated_at`.`. - Практически важно добавить обработку ошибок и явные проверки входа, чтобы исключить скрытые падения в рантайме. - Типичная ошибка при развитии такого кода — смешивать бизнес-правила и инфраструктурные детали в одном месте; лучше разделять ответственность. class MoneyType < ActiveRecord::Type::Value def cast(value) return value if value.is_a?(Money) Money.new(value.to_i) end def serialize(value) value.cents end def deserialize(value) Money.new(value.to_i) end end ActiveRecord::Type.register(:money, MoneyType) class Product < ActiveRecord::Base attribute :price, :money end