2013-02-12 3 views
0

У меня есть link_to image_tag, что при щелчке должен появиться модальный, чтобы отобразить экран справки. Код кнопки:Динамические кнопки в Rails 3

<%= link_to image_tag('help_sm.png'), '#', :id =>"btnShowHelp_"{current_step} %>

{current_step}, где это имя шага пользователя находится на том, что соответствует экрану помощи они обращающиеся.

Я получаю SyntaxError, выводя current_step.

Может ли кто-нибудь помочь с правильным синтаксисом?

ответ

1

Интерполяция в строках в рубин выглядит следующим образом: "#{var}", так что вам нужно сделать, это:

<%= link_to image_tag('help_sm.png'), '#', :id =>"btnShowHelp_#{current_step}" %> 

Обратите внимание, что вы должны использовать двойные кавычки (") для интерполяции строк, если вы используете одиночные кавычки ('), он не будет интерполировать.

+0

Это устранило проблему, но привело к другой. Теперь у меня есть NameError с этим: '<% = @ project.current_step.capitalize%>     <% = link_to image_tag ('help_sm.png'), '#',: id =>" btnShowHelp _ # {current_step } «%>' 'current_step' работает в первой части, но не второй. Идеи? – Matteo

+1

Исправлено свойство NameError - '... # {@ project.current_step}" ' – Matteo

+0

Рад, что у вас это работает, хорошая работа :) – Andrew

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