Ruby на рельсах / пассажирском / сообщение об ошибке ошибок в рендеринг файле ERB.Что происходит

StackOverflow https://stackoverflow.com//questions/9676062

Вопрос

Я недавно решил развернуть свой тест на сайт на мой домашний сервер, используя комбинацию Ruby на рельсах, пассажирских (MOD_RAILS) / APACHE и CAPISTRANO для развертывания.Я пытаюсь сделать мою домашнюю страницу, которая в данный момент не имеет никаких элементов, связанных с базой данных и все очень просто.

Файл, который я пытаюсь рендер:

<footer>
  <nav class="round">
    <ul>
      <li><%= link_to "About", '#', %></li>
      <li><%= link_to "Contact", '#', %></li>
    </ul>
  </nav>
</footer>
.

Я уверен, что его простой синтаксис или что-то еще, но вот часть журнала ошибок, которую я полагаю, важно:

  Rendered layouts/_footer.html.erb (9.4ms)
Completed 500 Internal Server Error in 276ms

ActionView::Template::Error (/var/rails/releases/20120309031203/app/views/layouts/_footer.html.erb:4: syntax error, unexpected ')'
...pend= ( link_to "About", '#', );@output_buffer.safe_concat('...
...                               ^
/var/rails/releases/20120309031203/app/views/layouts/_footer.html.erb:5: syntax error, unexpected ')'
...nd= ( link_to "Contact", '#', );@output_buffer.safe_concat('...
...                               ^
/var/rails/releases/20120309031203/app/views/layouts/_footer.html.erb:10: syntax error, unexpected keyword_ensure, expecting ')'
/var/rails/releases/20120309031203/app/views/layouts/_footer.html.erb:12: syntax error, unexpected keyword_end, expecting ')'):
    1: <footer>
    2:   <nav class="round">
    3:     <ul>
    4:       <li><%= link_to "About", '#', %></li>
    5:       <li><%= link_to "Contact", '#', %></li>
    6:     </ul>
    7:   </nav>
  app/views/layouts/application.html.erb:16:in `_app_views_layouts_application_html_erb___909272938_79472450'
.

Я надеюсь, что этого достаточно, но если вам нужно больше, пожалуйста, спросите. Спасибо.

Это было полезно?

Решение

Корневая причина - это строка кода:

<li><%= link_to "About", '#', %></li>
.

Здесь метод link_to () принимает только 2 параметра ("о", "," # "), однако есть« », в конце концов.Так что получилось ошибки.

Кроме того, если вы просто хотите сделать ссылку, такую как:

<a href="#">About</a>
.

Пожалуйста, используйте вместо этого «link_to_function».например.

<li><%= link_to_function "About", '#' %></li>
.

Другие советы

Каковы эти запятые там, висит в конце вызовов link_to?

<li><%= link_to "About", '#', %></li>
<li><%= link_to "Contact", '#', %></li>
.

попробуйте:

  <li><%= link_to "About", '#' %></li>
  <li><%= link_to "Contact", '#' %></li>
.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top