Rails4 アプリ。
を使用form_tag
してフォームを作成し、フォームがモデルに対応していない場合にエラーを処理および表示するための一般的な方法 (ある場合) を知りたいですか?
私が見つけたすべての例は、モデルと典型的な@model.errors.any?
ビュー条件に関連していますが、これはform_tag
.
Rails4 アプリ。
を使用form_tag
してフォームを作成し、フォームがモデルに対応していない場合にエラーを処理および表示するための一般的な方法 (ある場合) を知りたいですか?
私が見つけたすべての例は、モデルと典型的な@model.errors.any?
ビュー条件に関連していますが、これはform_tag
.
モデルを動作させないクラスに ActiveModel::Validations を含めることをお勧めしますが、検証が必要です。例として、Ticket クラスを考えてみましょう。
レール4
class Ticket
include ActiveModel::Model
attr_accessor :title, :description
validate_presence_of :title
validate_presence_of :description
end
さらに詳細については、Rails 4 の activemodel/lib/active_model/model.rb コードを参照して、Rails 4 で「ActiveModel::Model をインクルード」する理由を理解してください。
def self.included(base)
base.class_eval do
extend ActiveModel::Naming
extend ActiveModel::Translation
include ActiveModel::Validations
include ActiveModel::Conversion
end
end
レール3
class Ticket
include ActiveModel::Conversion
include ActiveModel::Validations
extend ActiveModel::Naming
attr_accessor :title, :description
validate_presence_of :title
validate_presence_of :description
end
Ticket クラスは、これらのメソッドをエラー検証に使用するモデルのように動作します
Ticket.new(ticket_params)
@ticket.valid?
@ticket.errors
@ticket.to_param
あなたのお悩み解決の一助になれば幸いです。