Rails 3.0.3モデルで複合仮想属性を指定すると、コンポーネント属性のエラーはどのように複合属性に自動的に配置されますか?たとえば:複数の列属性のレール
validates_presence_of :first_name
validates_presence_of :last_name
def name
"#{first_name} #{last_name}"
end
def name=(name)
first_name, last_name = name.split
end
は与える:
@model.errors[:name] = @model.errors[:first_name] + @model.errors[:last_name]
が、これは簡単な例であることに注意してくださいとコンポーネントは、複合のための新しい検証方法に属性から私は簡単に検証を移動することはできません属性。
もう一つの例は、サイズ(attachment_size)の検証が属性 'attachment'に置かれているPaperclip gemです。何か案は?
ありがとうございました。
ねえライアンを。申し訳ありませんが、私の例を明確にすることは、上記よりもはるかに複雑です。私は実際に 'Paperclip'が添付ファイルのサイズ、添付ファイルの種類などを検証する方法に近いものを探しており、すべてのバリデーションを基本属性に追加します(しかし、ソースを読むことでそれを理解できませんでした)。私は上記をより明確に更新します。 –