функция Discuss.TopicView.render / 2 не определена (модуль Discuss.TopicView недоступен) - PullRequest
0 голосов
/ 22 января 2019

Создание фреймворкового приложения Phoenix, в котором разработчики могли добавлять темы для обсуждения, и все работало гладко, пока я не добавил этот код в templates/view/index.html.eex:

<h5>Topics</h5>

<ul class="collection">
  <%= for topic <- @topics  do %>
  <li class="collection-item">
    <%= topic.title %>
  </li>
  <% end %>
</ul>

<div class="fixed-action-btn">
  <%= link to: topic_path(@conn, :new), class: "btn-floating btn-large waves-effect waves-light red" %>
    <i class="material-icons">add</i>
  <% end %>
</div>

Кажется, проблема заключается в синтаксисе выше,но как мне применить значок плюса внутри круглой красной кнопки?

В моем терминале я получаю:

== Ошибка компиляции в файле web / views / topic_view.ex == ** (EEx.SyntaxError) web / templates / topic / index.html.eex: 14: неожиданный конец выражения <% end%>

Я работаю с: Phoenix v1.2.5

1 Ответ

0 голосов
/ 22 января 2019

Большая ошибка, если вы не будете осторожны.

Это определенно была синтаксическая ошибка.При создании тегов ссылок в Phoenix убедитесь, что вы добавили ключевое слово do в конце, прежде чем закрывать тег Phoenix.

Так что вместо:

<div class="fixed-action-btn">
  <%= link to: topic_path(@conn, :new), class: "btn-floating btn-large waves-effect waves-light red" %>
    <i class="material-icons">add</i>
  <% end %>
</div>

напишите это так:

<div class="fixed-action-btn">
  <%= link to: topic_path(@conn, :new), class: "btn-floating btn-large waves-effect waves-light red" do %>
    <i class="material-icons">add</i>
  <% end %>
</div>

Я только заметил, что пропал после просмотра этого сообщения: https://elixirforum.com/t/how-to-add-i-tag-in-to-link-function/12040

...