Доступ к переменным локальных представлений из файла .js.erb - PullRequest
0 голосов
/ 26 февраля 2012

Я застрял. Я прочитал несколько постов в блоге о лучших методах внедрения javascript в приложение rails и посмотрел библию «Agile Web Dev With Rails3» - до сих пор не могу найти ответ. Итак, вот я прошу об этом.

Скажем, у меня есть представление (test.erb), которое содержит следующий код:

<%@full_stack.each {|trial|%>
...
<%= button_to "test ajax", {:action => "test", :controller => "verbs", :id => @verb.id}, remote: true, :class => "check"%>
<% } %>

@full_stack - переменная экземпляра соответствующего контроллера. Теперь я хочу извлечь эту вещь trial в свой javascript: я хотел бы сравнить ввод пользователя со строкой, лежащей в переменной trial (сравнение будет сделано на стороне клиента).

Этот подход не работает. Помещение alert("<%= trial.class %>") в test.js.erb приводит к предупреждению с помощью nil: часть JavaScript не может получить доступ к этой переменной. Итак, возможно ли вообще получить доступ к моим локальным переменным, которые я создал в представлении из JavaScript? Я видел несколько подобных вопросов здесь на SO, но ни один из них не является полностью объяснительным.

Я не удивлюсь, узнав, что мой подход совершенно неверен и что я не должен создавать дополнительные переменные в представлениях и что такие сравнения должны выполняться на стороне сервера, а не на стороне клиента. Я новичок в программировании, поэтому выбор правильного подхода оказывается сложным. Любые релевантные ссылки по выбору передового опыта при создании веб-приложений с RoR будут полезны. Спасибо!

1 Ответ

0 голосов
/ 26 февраля 2012

Если я не ошибаюсь, был скринкаст для этого материала. Вы должны посмотреть это на railscasts.com.

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