私は通常、ActiveModel :: ModelをいくつかのPORO(FormObject :: SignUpなど)に含めます。私は新しいRails 5 ActiveRecord :: Attribute APIについて読んだことがあります。簡単なキャストには使えると思っています。私はそれをインスタンス化しようとすると、新しいActiveRecord :: Attributes APIをPOROで使用することは可能ですか?
は例えば、
class FormObject::SignUp
include ActiveRecord::Model
include ActiveRecord::Attributes
attribute :birthday, :date
validates :birthday, presence: true
end
与えられた私はNameError: undefined local variable or method `reload_schema_from_cache' for FormObjects::SignUp:Class
例外が発生しました。
スタンドアロンで使用する予定はありませんか?ありがとう
アクティブモデル属性の大部分はデータベースを扱っています(実際のSQLクエリに属性を変換しているなど)。これがうまくいかない場合は意味があります。 –
@Joel_Blum彼らは仮想属性として働くためにそれを行うことができました..あなたが読んだり、DBに書き込んだりしないと、それは説明してはいけません。 –