Ruby on rails - Simple form not displaying errors for radio select. Other errors display fine -


i have user registration form (devise) 4 elements; username, email, password , 'user type'. user type boolean , displayed radio select on form.

errors username, email , password show no problem, no errors showing if user doesn't select 1 of radio buttons. validation in place, , form won't send without 1 of radio buttons selected, no errors.

the form:

<%= simple_form_for(resource, as: resource_name, url: registration_path(resource_name)) |f| %>             <%= f.error_notification %>         <div class="role-selector">             <p class="type-sel-txt"><%= t('front.whattype') %></p>             <label for="artistuser">                 <%= f.radio_button :artist, "1", :id => "artistuser" %>                 <span class="artistuser-sel"><%= t('front.bandm') %></span>             </label>             <label for="eventuser">                 <%= f.radio_button :artist, "0", :id => "eventuser" %>                 <span class="eventuser-sel"> <%= t('front.evento') %></span>             </label>         </div>         <%= f.input :username, required: true, autofocus: true, placeholder: t('forms.login.user'), label: false %>         <%= f.input :email, required: true, placeholder: t('forms.login.email'), label: false %>         <%= f.input :password, required: true, placeholder: t('forms.login.password'), label: false %>         <div id="passcheck"></div>         <%= f.button :submit, t("forms.login.signup"), id: "register-btn" %>     <% end %> 

user.rb:

  validates_inclusion_of :artist, in: [true, false], on: :create 

registration works without problem, issue error not showing. i'm not sure if necessary paste more of code, if i'll update whatever required.

as opposed simple form's f.input handles related tags besides input (the label tag, error message tag), f.radio_button handles input field, because a helper actionview, not simple form.

simple form generates span "error" class default when field has errors attached. guess have render span yourself, in similar way did field labels:

<div class="role-selector">   <p class="type-sel-txt"><%= t('front.whattype') %></p>   <label for="artistuser">      <%= f.radio_button :artist, "1", :id => "artistuser" %>      <span class="artistuser-sel"><%= t('front.bandm') %></span>   </label>   <label for="eventuser">      <%= f.radio_button :artist, "0", :id => "eventuser" %>      <span class="eventuser-sel"> <%= t('front.evento') %></span>   </label>    <!-- show error artist attribute, if present -->   <% if resource.errors['artist'].present? %>     <span class="error"><%= resource.errors['artist'] %></span>   <% end %> </div> 

Comments

Popular posts from this blog

wordpress - (T_ENDFOREACH) php error -

Export Excel workseet into txt file using vba - (text and numbers with formulas) -

Using django-mptt to get only the categories that have items -