2013-12-12 4 views
3

Есть ли способ реализовать, если утверждения внутри :javascript фильтр с HAML в Rails?HAML Javascript Rails, если условия

Я пробовал различные способы, такие как

:javascript 
    $(function(){ 
    - if @booth.greeting_video? 
    = $('#greeting_video').modal(); 

Но, кажется, они не будут работать вообще.

Есть ли чистый способ реализации этого?

ответ

2

Фильтры в HAML обрабатываются отдельно от другого кода, и единственным допустимым здесь является метод #{}, который просто вставляет значение Ruby.

Теоретически вы можете вставить свое условие там и вернуть в зависимости от этого различные значения. И я не могу догадаться, что вы пытаетесь сделать с = $('#greeting_video').modal(); - это похоже на javascript, но почему же стоит = перед тем как сделать его похожим на рубиновую вставку?

И, также, нужно сказать, что это не очень хорошая идея, так много смешать задние и фронтальные. Здесь может быть задана переменная js, и где-то в другом файле модаль будет отображаться или нет, в зависимости от этой переменной (только другое предложение)

+0

Спасибо. Как бы вы реализовали условие javascript? Разумеется, вы не можете вставлять внешнюю ссылку javascript для каждого условия, содержащего одну или две строки javascripts. –

+0

вещь, о которой я думал, просто помещена '# {'$ (' # greeting_video '). Modal();' если @ booth.greeting_video?} ', так как текст там – alony

+0

работает! Спасибо!!! –

Смежные вопросы