Я плохо знаком с направляющими, и у меня есть довольно простая проблема с вызыванием функций JavaScript из представления. В направляющих 2 я сделал бы...
= javascript_tag "name(arguments)"
где функция JavaScript "имя" была расположена в моем application.js файле. Однако это, кажется, не работает в направляющих 3? Или я пропускаю что-то? Я искал Google в течение некоторого времени, не находя ответ.
ОБНОВЛЕНИЕ:
Хорошо, таким образом, я посмотрел на источник двух различных путей (использующий javascript_tag и haml фильтр JavaScript), как предложено. И это очень странно, потому что источник HTML, кажется, идентичен? Кроме различия в двойных и одинарных кавычках в объявлении типа сценария.
ВО-ПЕРВЫХ: использование javascript_tag, который не работает
= javascript_tag "number_interval(#{fact.current_value}, #{fact.growth_per_second}, #{fact.decimal_number}, '#{dom_id(fact, "number")}'"
Источник...
<div id='number_number_interval_727'>loading</div>
<script type="text/javascript">
//<![CDATA[
number_interval(6952596670.36814, 2.33002440293917, 0, 'number_number_interval_727'
//]]>
</script>
ВО-ВТОРЫХ: использование haml фильтра JavaScript и это работает
:javascript
number_interval(#{fact.current_value}, #{fact.growth_per_second}, #{fact.decimal_number}, '#{dom_id(fact, "number")}')
Источник...
<div id='number_number_interval_727'>loading</div>
<script type='text/javascript'>
//<![CDATA[
number_interval(6952596917.02179, 2.33002440293917, 0, 'number_number_interval_727')
//]]>
</script>
Ну, я предполагаю, что буду просто придерживаться фильтра haml!