ActiveRecord
で検証を機能させるためのドキュメントを調べてきましたActiveModel
。何らかの理由で、検証結果が返されません。
ActiveRecord
Railsの背後にあるカスタムAPIを介してインターフェースするのではなく、インターフェースする一連のモデルがあります。
モデル:
class ApiObject < ApiConnector
include ActiveModel::Validations
attr_accessor :fieldName
validates :fieldName, :presence => true
def save
#save method implementation
end
end
コントローラー:
def create
@apiObject = ApiObject.new(params[:api_object])
respond_to do |format|
if @apiObject.save
format.html { redirect_to(@apiObject, :notice => 'User was successfully created.') }
format.xml { render :xml => @apiObject, :status => :created, :location => @apiObject }
else
format.html { render :action => "new" }
format.xml { render :xml => @apiObject.errors, :status => :unprocessable_entity }
end
end
end
フォーム:
<%= form_for :api_object, :url => '/apiobjectcontroller/' do |f| %>
<%= f.label :fieldName, 'Field Name' %>
<%= f.text_field :fieldName %>
<%= f.submit 'Create'%>
<% end %>
私はここにレイアウトされたコードに従っています:RailsActiveModel検証
@ apiObject.saveがfalseとして返されるため、メソッドは正しくフォームに戻りますが、検証応答は返されません。マークアップを確認しましたが、通常のRails検証結果が返されません。私は何が欠けていますか?