Для сырой JavaScript + ERB
<script type="text/javascript">
var my_foo = <%= some_ruby_expression %>
</script>
например,
<script type="text/javascript">
var user_name = "<%= current_user.name %>";
</script>
кроме var
ключевого слова, это правильный код CoffeeScript, я считаю.
Btw, это действительно то, о чем вы просите? - Я не знаю, -))
UPDATE
current_user
является объектом рубин/active_record. Вы можете назначить его переменной javascript, но не можете использовать ее в рубине.
Но ниже фрагмент может дать вам некоторую идею. Я создал проект рельсов и закрепил модель страницы.
<p id="notice"><%= notice %></p>
<p>
<strong>Title:</strong>
<%= @page.title %>
</p>
<p>
<strong>Email:</strong>
<%= @page.email %>
</p>
<p>
<strong>Comments:</strong>
<%= @page.comments %>
</p>
<script type="text/javascript">
var mypage = '<%= raw @page.to_json %>'; // attention to single quotes
console.log(mypage);
</script>
<%= link_to 'Edit', edit_page_path(@page) %> |
<%= link_to 'Back', pages_path %>
Затем вы можете разобрать и использовать его как обычный объект javascript. Ниже показано, как я это сделал.
UPDATE # 2
сделать это в CoffeeScript файле.
window.onload = ->
myvar = '<%= raw @page.to_json %>'
myvarAsObj = JSON.parse(myvar)
do_something_with myvarAsObj
return
Вы можете попробовать посмотреть этот драгоценный камень https://github.com/gazay/gon. Я не использовал его сам, но другие рекомендовали его здесь иногда. – Iceman
Что это за кодолин? : O Я действительно не понимаю, что вы хотите сделать.На левой стороне есть код ruby, а справа есть Javascript ?! ლ (ಠ 益 ಠ ლ) – siegy22