Я создал частичное для LineItem
, что в моем случае испускает <tr>
с паролем <td>
s. Это прекрасно работает и денди.Правильный способ условного рендеринга в частичном Rails?
Что бы я хотел сделать, это то же частичное в разных местах. В исходном представлении много места, поэтому отображение каждой ячейки в порядке. Но другая (боковая панель) имеет гораздо меньше места, и я бы хотел отобразить только две из 5 ячеек.
Итак, возникает вопрос, каков правильный способ реализации этого? Я бы хотел, чтобы «полная» версия была по умолчанию, если не указано иное, и используйте только ограниченную версию, если передан параметр.
В настоящее время я, вероятно, использовал функцию передачи локальных данных в частичное и проверил, задан ли параметр limited
, и если да, пропустите последние N ячеек. Я на правильном пути, и если да, то какую переменную я должен использовать (могу ли я использовать для этого символы)?
Current _line_item.html.erb (что я несколько недоволен)
<tr>
<td><%= line_item.quantity %>×</td>
<td><%= line_item.product.title %></td>
<td class="item_price"><%= number_to_currency(line_item.total_price, unit: '€') %></td>
<% unless defined? limited %>
<td class="remove_item"><%= button_to 'Remove', line_item, method: :delete %></td>
<% end %>
</tr>
Edit: Добавлена текущая версия.
Не могли бы вы добавить некоторый код, что вы сделали, что мы можем скопировать и вставить? Я нахожу это очень энергоемким, чтобы привести пример с нуля. :) – Micka
Уверен, там вы ходите :) – bobblez