1
대괄호와 따옴표없이 레일스 오류 메시지를 어떻게 표시 할 수 있습니까?레일 : 괄호가없는 오류 메시지
["please fill out domain"]["please fill out email"]
어떻게 내가 괄호와 따옴표를 제거 할 수 있습니다 오류 메시지가 표시되면
, 그것은처럼 보이는? 내가 다른 컨트롤러
def create
respond_to do |format|
# save form data
@login = Login.new(params[:login])
# if validation fails, throw error messages
if [email protected]
flash[:error] = @login.errors.to_a if @login.invalid?
end
# render landingpage
format.html { render :template => 'landingpage/index' }
format.js { render :action => 'create' }
end
end
을 사용하고 원인
모델
validates :domain,
:presence => { :message => 'please fill out domain'},
:uniqueness => { :message => 'domain already registered', :case_sensitive => true }
validates :email,
:presence => { :message => 'please fill out email'},
:uniqueness => { :message => 'email already registered', :case_sensitive => true }
컨트롤러
내가 템플릿의 URL을 지정 해요 (format.html
참조) create.js.erb
<% if @login.errors.any? %>
// error
var error_string = "";
<% @login.errors.values.each do |msg| %>
error_string += "<%= msg %>";
<% end %>
$("#flash_messages").html(error_string);
<% else %>
// no error
<% end %>
보기 당신은 전체 오류 메시지를 반복 할 때
<div id="flash_messages"></div>
'@ login.errors.to_a'에서'to_a' 호출을 제거하면 어떻게됩니까? – MurifoX
시도하십시오. @@login.errors.messages.each do | msg |' – HungryCoder
@MurifoX : 불행히도 아무 것도 바뀌지 않습니다 – Slevin