Код ERB ломает строки кода после него

Я использовал следующий код в моем файле show.html.erb для загрузки видео с YouTube. Видео загружается, но любой код после этого не выполняется.

<p>
<iframe id="ytplayer" type="text/html" width="640" height="390"
  src="http://www.youtube.com/embed/<%[email protected]%>"
  frameborder="0"/>
</p>

person user3120549    schedule 19.12.2013    source источник
comment
Есть ли у вас какие-нибудь ошибки в логах?   -  person tuxdna    schedule 20.12.2013


Ответы (2)


Измените это на

<p>
  <iframe id="ytplayer" type="text/html" width="640" height="390"
    src="http://www.youtube.com/embed/<%[email protected]%>"
    frameborder="0">
  </iframe>
</p>

См. этот пост

person usha    schedule 19.12.2013
comment
Ключевым моментом здесь является </iframe> - person Richard Peck; 20.12.2013

Вы должны иметь возможность использовать синтаксис <%= 'no line break' -%>, например:

<iframe id="ytplayer" type="text/html" width="640" height="390"
src="http://www.youtube.com/embed/<%= @video.youtubeid -%>"
frameborder="0">
</iframe>

Обратите внимание на лишнее тире в конце -%>

person xdotcommer    schedule 19.12.2013
comment
Это имеет значение только в том случае, если за закрывающим тегом ERB есть пробелы. Здесь дело обстоит не так. - person Holger Just; 20.12.2013