Я размышляю об использовании агрегатора ActiveRecord для некоторых полей.
Меня беспокоит то, насколько хорошо агрегированные атрибуты работают с полями form_for и input.То есть, как вы генерируете поля ввода для агрегированных атрибутов (поскольку они только для чтения)?
Как, давайте возьмем пример из http://api.rubyonrails.org/classes/ActiveRecord/Aggregations/ClassMethods.html.
class Customer < ActiveRecord::Base
composed_of :balance, :class_name => "Money", :mapping => %w(balance amount)
composed_of :address, :mapping => [ %w(address_street street), %w(address_city city) ]
end
class Money
attr_reader :amount, :currency
def initialize(amount, currency = "USD")
@amount, @currency = amount, currency
end
end
Теперь предположим, что у нас есть форма, в которой клиенту будет разрешено вводить свой собственный баланс.Как вы делаете это form_for и генерировать поля ввода для баланса?Кроме того, к чему относятся проверки баланса?Работает ли массовое присвоение?