Я пробовал множество методов и следил за руководством Ryan Bates', но независимо от того, что я делаю, я до сих пор не определился.Rails 4: Передача переменных на javascript
application.html.erb
<body>
<%= content_tag :div, id: 'trackers', data: {trackers: User.count} do %>
<% end %>
</body
application.js.erb
var datadump = ($('#trackers').data('trackers'))
console.log(datadump)
//returns undefined in console
Просмотр исходной страницы можно увидеть переменную
<div data-trackers="2" id="trackers">
Я передаю User.count на данный момент просто для упрощения, но мне нужно будет передать @trackers_count, который создается в before_action в приложении n. Я должен быть в состоянии разобраться с этим, хотя однажды выясню проблему здесь. Какие-либо предложения?
UPDATE - Я упростил все переменные вплоть до трекеров, а не trackers_count, чтобы предотвратить любые ошибки из синтаксиса и обновленного кода здесь, чтобы отразить это.
ANSWER UPDATE - Я выбрал правильный ответ, потому что, если вы хотите передать любые переменные ASIDE FROM CURRENT_USER, эти методы отлично работали. Тем не менее, вы не можете получить доступ к чему-либо с current_user в JS, потому что он загружается перед окном, поэтому он не может знать, кто является current_user. Это настоящая боль, но я просто сделал это долгий путь и получил доступ к информации, которая мне нужна, передав json и запросы ajax.
Try '$ ('# trackers_count') данные ('следопыты-Count')', дефис вместо подчеркивания, как. в HTML. – Santhosh
@Santhosh, без изменений .. –
Можете ли вы ссылаться на конкретные рельсы, о которых вы говорите? – patrick