我的验证工作正常
class Owner < ActiveRecord::Base
validates :car_number, :name, :phone, presence:true
validates_uniqueness_of :car_number
has_many :cars
has_many :visits
accepts_nested_attributes_for :visits
和我的save.js.erb
$("ul.errors").html("")
<% if @owner.errors.any? %>
<% @owner.errors.full_messages.each do |message| %>
$("ul.errors").append($("<li />").html("<%= message.html_safe %>"))
$('.field_with_errors').addClass('has-error has-feedback');
<% end
else %>
$("#new_owner_div").html("<%= j (render 'visits/show', { :f => @visit })%>")
<%end%>
但没有字段在“field_with_errors”类下面。
答案 0 :(得分:0)
好的,与往常一样,需要花费很多时间才能解决的麻烦比我想象的要容易。
我找到了如何为每个错误输入[假设您的输入被命名为:modelname [field_name]
<int:header-enricher input-channel="inputMessageChannel" output-channel="messagePublishChannel">
<int:header name="message_success" expression="@gateway.exchange(#root).payload" />
</int:header-enricher>
<int:header-value-router input-channel="messagePublishChannel" header-name="mqstatus">
<int:mapping value="success" channel="responseCreatorChannel" />
<int:mapping value="failure" channel="errorChannel" />
</int:header-value-router>
<int:gateway id="gateway" default-request-channel="getQdetails" />
<int:chain input-channel="getQdetails">
<int:service-activator ref="rdrBusinessRulesValidationService" method="transform" />
<int-xml:marshalling-transformer marshaller="marshaller" result-transformer="messageResultTransformer">
</int-xml:marshalling-transformer>
<int:header-value-router header-name="region">
<int:mapping value="USA" channel="region1Channel" />
<int:mapping value="PRI" channel="region2Channel" />
</int:header-value-router>
</int:chain>
<int-jms:outbound-channel-adapter channel="region1Channel" connection-factory="activeMqconnectionFactory" destination="region1Destination">
<int-jms:request-handler-advice-chain>
<bean class="org.springframework.integration.handler.advice.ExpressionEvaluatingRequestHandlerAdvice">
<property name="onSuccessExpression" value="T(Boolean).TRUE" />
<property name="onFailureExpression" value="T(Boolean).FALSE" />
<property name="successChannel" ref="toReplySuccess" />
<property name="failureChannel" ref="toReplyFailure" />
<property name="trapException" ref="true" />
</bean>
</int-jms:request-handler-advice-chain>
</int-jms:outbound-channel-adapter>
<int:transformer input-channel="toReplySuccess" output-channel="toReplyChannel"
expression="T(org.springframework.messaging.support.MessageBuilder)
.createMessage(payload, inputMessage.headers)" />
<int:transformer input-channel="toReplyFailure"
expression="T(org.springframework.messaging.support.MessageBuilder)
.createMessage(payload.evaluationResult, payload.failedMessage.headers)" />
<int:bridge input-channel="toReplyChannel"/>
在css中的位置:
<% @owner.errors.each do |attribute, error| %>
$('[name="owner[<%=attribute%>]"]').addClass('field_with_errors')
<% end %>