weergave lijst van de dagen in een week in Rails met datum :: DAYNAMES

stemmen
9

Ik heb problemen met het weergeven van een lijst van dagen in een week in een vorm.

<%= form_for [@hourable, @hour] do |f| %>

  <% days = []
  Date::DAYNAMES.each_with_index { |x, i| days << [x, i] } %>

  <% days.each_with_index do |day,index| %>

  <div class=field>
    <%= f.check_box day[0] %>
  </div>

  <% end %>   

  <div class=actions>
    <%= f.submit %>
  </div>
<% end %>

Ik krijg fout

undefined method `Sunday' for #<Hour:0x007fe13c764010>

Maar als ik weer te geven gewoon

<%= day[0] %>Het zal me een lijst geven Sunday, Monday, Tuesday, etc... to Saturday

Wat doe ik verkeerd hier?

Bedankt

De vraag is gesteld op 26/06/2013 om 02:21
user
In andere talen...                            


2 antwoorden

stemmen
17

Vervangen

<% days = []
 Date::DAYNAMES.each_with_index { |x, i| days << [x, i] } %>

<% days.each_with_index do |day,index| %>

<div class="field">
 <%= f.check_box day[0] %>
</div>

Met

 <%= f.label :FIELD_NAME%>
<% Date::DAYNAMES.each do |day| %>
  <%= f.check_box :FIELD_NAME, {}, day %>
  <%= day %>
<% end %>
antwoordde op 26/06/2013 om 02:28
bron van user

stemmen
2

Het gaat hier roept each_with_indexop days, daar daysis een array van arrays de manier waarop je het hebt gebouwd, waarin elk element de vorm heeft [dayname, index].

In plaats van het opbouwen days, kunt u werken off van de DAYNAMESserie direct, of te vervangen days.each_with_indexmet alleen days.each do |x, i|(maar persoonlijk denk ik dat dit vreemd is).

Zie ook http://api.rubyonrails.org/classes/ActionView/Helpers/DateHelper.html#method-i-select_day en Rails non-table keuzelijst als je niet gebonden aan vakjes.

antwoordde op 26/06/2013 om 02:28
bron van user

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more