Ruby on Rails 3.1: ошибка с «рендерингом» в javascrtip (AJAX) из RailsCasts (поиск, сортировка, разбиение на страницы с AJAX) - PullRequest
1 голос
/ 13 октября 2011

Мой код от: RailsCasts: поиск, сортировка, разбиение на страницы с AJAX

У меня есть эта ошибка:

undefined method render for #<#<Class:0x9e54e54>:0xa860f24>
(in /var/www/final/.../app/assets/javascripts/application.js.erb)

My application.js.erb:

$(function() {
 $("#zoznam_render th a, #zoznam_renders .pagination a").live("click", function() {
    $("#zoznam_render").html("**<%=j render 'zoznam' %>**");
    return false;
  }); });

В index.html.erb визуализация 'zoznam' (_ zoznam.html.erb) в порядке. "zoznam / index" - это список моих продуктов с пользовательским выбором sql. Все в порядке, но «жирный» сценарий не годится. «

1 Ответ

0 голосов
/ 14 октября 2011

из TheCompWiz : оригинальный форум Хорошо ... Я думаю, что нашел исправление для рельсов 3.1. Хитрость заключается в том, чтобы не использовать активы. Вам нужна страница, которая будет отображена. Это может показаться хакерским ... Я согласен ... но это работает. Вероятно, это будет лучше в будущем.

Что вам нужно сделать, это добавить запись в файле маршрутов перед "ресурсами" для продуктов, например, так:

соответствует "/products/index.js",: controller => 'products',: action => 'index',: format =>: js

и действуйте как обычно. По сути, это заставляет Rails пропустить использование новой системы управления активами ... и вернуться к старомодной настройке рендеринга. Вероятно, это хорошо, так как index.js отображается для каждого запроса и не будет согласован с другим javascript и не будет минимизирован.

// может быть, хороший ответ ...

...