Vì vậy, tôi có vòng lặp này:Rails được index of "mỗi" vòng
<% @images.each do |page| %>
<% end %>
Làm thế nào tôi sẽ nhận được index of "trang" bên trong vòng lặp?
Vì vậy, tôi có vòng lặp này:Rails được index of "mỗi" vòng
<% @images.each do |page| %>
<% end %>
Làm thế nào tôi sẽ nhận được index of "trang" bên trong vòng lặp?
<% @images.each_with_index do |page, index| %>
<% end %>
Hãy thử each_with_index.
Hai câu trả lời là tốt. Và tôi cũng đề nghị bạn một phương pháp tương tự:
<% @images.each.with_index do |page, index| %>
<% end %>
Bạn có thể không thấy sự khác biệt giữa điều này và câu trả lời chấp nhận. Hãy để tôi hướng mắt bạn đến các cuộc gọi phương thức này: .each.with_index
xem cách thức số .each
và sau đó .with_index
.
Phương pháp này mới hơn và cho phép bạn bù đắp chỉ mục (giả sử bạn muốn bắt đầu vòng lặp trên mục 1 thay vì 0 hoặc một cái gì đó tương tự) – neanderslob
Tôi mất một lúc để nhận ra mã này không giống với câu trả lời được chấp nhận! – mwfearnley
Để biết thông tin về những người khác đang xem xét điều này, tất cả các câu trả lời được cung cấp đều có thể áp dụng cho Ruby nói chung, không dành riêng cho chức năng Rails. – Phrogz
Chỉ cần lặp qua từng_with_index và bạn tốt để đi! – Ravindra