У меня есть ресурс eBook со свойством value:
class EBook < ApplicationRecord
include Mixin
end
и модулем:
module Mixin
extend ActiveSupport::Concern
included do
# validations
belongs_to :user
end
def change_value
@value = 200
end
end
Я хотел бы иметь возможность вызвать EBook.change_value
и иметь этот экземплярзначение установлено на 200
.Как я могу это сделать?Это антипаттерн?Кажется, я не могу найти ничего, что позволило бы мне изменять состояние экземпляра через модуль.
Используя консоль rails, я получаю такой вывод:
EBook Load (0.3ms) SELECT `e_books`.* FROM `e_books` ORDER BY `e_books`.`id` ASC LIMIT 1 OFFSET 1
=> 200
, но он не обновляетсяили сохраните модель.