Передача переменной экземпляра в файл js.erb (Rails 3 / jQuery) - PullRequest
6 голосов
/ 14 мая 2011

У меня есть файл «index.html.erb» со следующим:

<% = render @users%>

Это отрисовывает _user.html.erb "и выводит кнопку для выполнения определенного действия для каждого пользователя:

<% = link_to" action ", action_path (user),: id =>" # {user.id} _action",: remote => true)%>

Я настроил свой пользовательский контроллер для ответа на запрос AJAX, посмотрев на" action.js.erb ".

Для того, чтобы выполнять методы javascript для определенных пользователей внутри партиала, и я хотел бы знать, как переменные экземпляра из моего партиала (такие как user.id) могут быть переданы или доступны в js.erbфайл, например:

$("#{@user.id}_action").toggle();

Ответы [ 2 ]

11 голосов
/ 14 мая 2011

Вы получаете доступ к информации в ваших *.js.erb -файлах, как в ваших *.html.erb -файлах, используя @users или другие переменные экземпляра, объявленные в контроллере:

$("#<%= @user.id %>_action").toggle();
7 голосов
/ 06 марта 2012

есть отличная жемчужина под названием gon, которая может немного упростить и упорядочить вещи: https://github.com/gazay/gon/blob/master/README.md

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...