私は Ruby on Rails 3 を使用しており、「Rails の方法で」エラーを処理するためにクラス Account を拡張しようとしています。
私のモデルでは
class Users::Account
extend ActiveModel::Naming
extend ActiveModel::Translation
include ActiveModel::Validations
include ActiveModel::Conversion
def persisted?
false
end
attr_reader :errors
def initialize(attributes = {})
@errors = ActiveModel::Errors.new(self)
@firstname = attributes[:firstname]
@lastname = attributes[:lastname]
...
end
end
上記のクラスで、次のハッシュを使用して「カプセル化」したいと思いますActiveModel::Errors
---
errors:
base: Invalid account.
firstname: Too short.
このように、上記のエラーハッシュをクラスに挿入した後、私ができるように
@account.errors # => Hash of errors
クラスにエラーを追加する方法がわからないため、テストシナリオのデバッグは(常に)次のとおりです。
firstname: T
lastname: Test surname
errors: !omap []
どうやってやるの?