У меня есть приложение Rails 3 с видом, который меня раздражает. Представление состоит из четырех вкладок. На каждой вкладке отображается отфильтрованный список таких записей:
Первая вкладка
<% @faults.each do |fault| %>
<%= fault.name %>
<% end %>
Вторая вкладка
<% @faults_pending.each do |fault| %>
<%= fault.name %>
<% end %>
Третья вкладка
<% @faults_closed.each do |fault| %>
<%= fault.name %>
<% end %>
Очевидно, я упустил намного больше кода. Чтобы значительно упорядочить вид, я подумал о создании партиала для каждой вкладки, однако каждая из этих частей будет идентична, за исключением строки <% @faults.each do |fault| %>
.
Есть ли способ иметь один частичный и каким-то образом при рендеринге частичного набора области (или метода, я никогда не могу вспомнить, как он называется).
1 ответ
Я думаю, вы ищете вариант render's: locals.
Вкладка первая
<%= render :partial => "faults", :locals => { :faults => @faults } %>
Вкладка два
<%= render :partial => "faults", :locals => { :faults => @faults_pending } %>
Вкладка три
<%= render :partial => "faults", :locals => { :faults => @faults_closed } %>
Частичное
<% faults.each do |fault| %>
<%= fault.name %>
<% end %>
Похожие вопросы
Новые вопросы
ruby-on-rails-3
Ruby on Rails - это фреймворк для веб-разработки с открытым исходным кодом, написанный на Ruby. Ruby on Rails следует принципу соглашения о конфигурации, освобождая вас от необходимости заново изобретать вещи, чтобы оставаться продуктивными. Используйте этот тег только для вопросов, касающихся Rails 3, а также пометьте эти вопросы [ruby-on-rails].