Хорошо, просматривая некоторые подкасты, я видел, что в Rails 3 нам нужно использовать тег <%= %>
сейчас, когда мы раньше этого не делали. Однако, просто поместив это в мой файл application.html.erb:
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
<head></head>
<body>
<%= if true %>
true
<% end %>
</body>
</html>
не отображает 'true', как я ожидал. Вместо этого я получаю ошибку:
Showing /app/views/layouts/application.html.erb where line #5 raised:
/app/views/layouts/application.html.erb:5: syntax error, unexpected ')', expecting keyword_then or ';' or '\n'
');@output_buffer.append= ( if true );@output_buffer.safe_concat('
^
/app/views/layouts/application.html.erb:7: syntax error, unexpected keyword_end, expecting ')'
'); end
^
/app/views/layouts/application.html.erb:10: syntax error, unexpected keyword_ensure, expecting ')'
/app/views/layouts/application.html.erb:12: syntax error, unexpected keyword_end, expecting ')'
Extracted source (around line #5):
2: <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
3: <head></head>
4: <body>
5: <%= if true %>
6: true
7: <% end %>
8: </body>
возвращение к старому тегу <% %>
устраняет эту проблему. Это правильно? Разработчики рельсов решили вернуться к старому тегу или я что-то упустил?
rails -v
получает меня: Rails 3.0.5
Есть идеи?