2014-12-05 4 views
0

Как добавить или добавить помощник ruby, который выполняет итерацию в активном ответе записи?Добавить встроенный рубиновый помощник с jquery

Я попытался это (с .html или .append):

$(".result").html('<%= @products.each do |product| %><label>product</label><% end %>'); 

Но проблема в том, что вернуть весь перечень продукции, как это:

productproduct[#<Product id: 35, name: "", price: nil, category: "", quantity: nil, qty_unit: "", company_id: 108, created_at: "2014-11-13 17:22:33", updated_at: "2014-11-13 17:22:33", cost: nil, seller_bonification: nil>, #<Product id: 36, name: "Salmon", price: 3000, category: "Pescado", quantity: 1, qty_unit: "kg", company_id: 105, created_at: "2014-11-13 17:25:27", updated_at: "2014-11-13 17:25:27", cost: nil, seller_bonification: nil>] 

Таким образом, я получаю только строка «продукт» из продукта, а не итерированный объект, я не могу получить доступ к каждому продукту. И после этого я получаю весь список продуктов в режиме Active Records. Я также попытался это без «=», например:

$(".result").html('<% @products.each do |product| %><label>product</label><% end %>'); 

И я только получаю:

productproduct 

Я не знаю, как решить эту проблему. Может быть, лучшей практикой является использование gon gem, или turbolinks, или хэш ?? Кто-нибудь знает?

ответ

1

Изменить код:

$(".result").html('<% @products.each do |product| %><label><%= product.name %?</label><% end %>'); 

если вы хотите напечатать что-нибудь из продуктов (например, имя в моем примере кода).

Таким образом, remove = for @ product.each tag;

добавить <% =%> к продукту и позвонить по своему желанию.

1

При использовании each, не используйте <%= но <%

<%= пытается поставить возвращаемое значение each. Даже each имеет возвращаемое значение в Рубине

0

В Еврорадио шаблон для печати что-то <%= %> используется и во время цикла или состояние проверки вы должны использовать <% #condition %>

Смежные вопросы