Рекурсивное рендеринг одного и того же партиала в рельсах приводит к сбою приложения - PullRequest
0 голосов
/ 03 апреля 2019

Я пытаюсь отобразить дерево узлов, рекурсивно вызывая один и тот же фрагмент каждый раз с другим узлом.Но каким-то образом, он продолжает вызывать партиал с корневым узлом бесконечное количество раз, пока приложение не падает.

это index.html.erb

    <%= render(partial: "branch", head: @head)%>

И это _branch.html.erb

    <%= @head.name%>

    <%@head.children.each do |child|%>
        <%= render( partial: "branch", head: child)%>
    <%end%>

Что я здесь не так делаю?

1 Ответ

0 голосов
/ 03 апреля 2019

Вы хотите визуализировать каждую ветвь, а не одну и ту же @head снова и снова:

<%= render(partial: "branch", object: @head) %>

Тогда частичное выглядит так:

<%= branch.name %>

<% branch.children.each do |child|%>
    <%= render( partial: "branch", head: child)%>
<% end %>

Имя частичногоИмя переменной, представляющей содержимое.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...