0

Ich bin ein Anfänger in Ruby on Rails. Und ich bin Koreanisch. Also meine Worte sind wenig wired ... Meine Frage ist diese ... Wenn ich 10 Daten habe, möchte ich 1 ~ 5. Daten in einer ersten Zeile und 6 ~ 10. Daten in einer zweiten Zeile setzen.Verwenden von Ruby on Rails, wie kann ich Daten in eine neue Tabellenzeile einfügen?

like this

Ich versuche, habe diese Codes

   <table border height=300 width=300 align=center> 
       <thead> 
        <tr style="font size:20;"> 
        <th></th> 
        <th></th> 
        </tr> 
       </thead> 

       <tbody> 
        <% if current_user.samulham.nil? %> 
        <tr> 
         <% @samulham.each do |x| %> 
         <% if x.user_id.present?%> 
          <td><%= "X" %></td> 
         <% else %> 
          <td><%= link_to "#{x.lockernumber}", {:controller => "home", :action => "register", :cur_user => current_user.id, :cur_samulham => x.id}, method: :post %></td> 
         <% end %> 
         <% end %> 
        </tr> 
        <% end %> 
       </tbody> 
       </table> 

Vielen Dank für Ihre Berücksichtigung. :)

Antwort

1

Wenn Ihre Daten Größe immer 10 ist, können Sie es hart codiert tun, so etwas wie folgt aus:

<tbody> 
         <% if current_user.samulham.nil? %> 
         <tr> 
          <% @samulham.first(5)each do |x| %> 
          <% if x.user_id.present?%> 
           <td><%= "X" %></td> 
          <% else %> 
           <td><%= link_to "#{x.lockernumber}", {:controller => "home", :action => "register", :cur_user => current_user.id, :cur_samulham => x.id}, method: :post %></td> 
          <% end %> 
          <% end %> 
         </tr> 
         <tr> 
          <% @samulham.last(5)each do |x| %> 
          <% if x.user_id.present?%> 
           <td><%= "X" %></td> 
          <% else %> 
           <td><%= link_to "#{x.lockernumber}", {:controller => "home", :action => "register", :cur_user => current_user.id, :cur_samulham => x.id}, method: :post %></td> 
          <% end %> 
          <% end %> 
         </tr> 
         <% end %> 
    </tbody> 

EDIT: aber wenn Sie wollen es für Gruppen von 5 Aufzeichnungen generic tun, könnten Sie etwas tun wie:

@samulham.in_groups_of(5).each do |group| 
         <tr> 
          <% group.each do |x| %> 
          <% if x.user_id.present?%> 
           <td><%= "X" %></td> 
          <% else %> 
           <td><%= link_to "#{x.lockernumber}", {:controller => "home", :action => "register", :cur_user => current_user.id, :cur_samulham => x.id}, method: :post %></td> 
          <% end %> 
          <% end %> 
         </tr> 
end 
+0

Vielen Dank Ihre Antwort! Aber meine Datensatzgröße ist normalerweise über 10 ... Ich möchte nur 5 Daten in einer Zeile setzen. –

+0

@SunHuKim Ich habe den Beitrag bearbeitet, um die Lösung zu rationalisieren. Hoffe es hilft dir –

+0

Es ist wirklich hilfreich für mich !! Vielen Dank! –

Verwandte Themen