Вот вызов в файле application.html.erb
:
<%= render :partial => 'tasks/_new' %>
Вот часть визуализации (_new.html.erb
):
<% form_for @task do |f| -%>
<%= f.text_field :body %>
<%= submit_tag "Submit" %>
<% end -%>
Вот метод в контроллере 'tasks':
def new
@task = Task.new
respond_to do |format|
format.html # new.html.erb
format.xml { render :xml => @task }
end
end
Вот сообщение об ошибке, которое я получаю:
Missing template tasks/__new.erb in view path app/views
И это говорит об ошибке в этой строке:
<%= link_to "tasks", tasks_path %> <%= render :partial => 'tasks/_new' %>
Файл находится в правильном каталоге. Странная вещь в том, что есть
дополнительные _
в имени файла, в ошибке. Когда я сдаюсь и переименую
частично к __new.erb
, вот ошибка, которую я получаю:
Called id for nil, which would mistakenly be 4 -- if you really wanted the id of nil, use object_id
И это говорит об ошибке в этой строке:
<% form_for @task do |f| -%>
Я также пытался без _
в коде, как предложил Петрос, но он возвращает ту же ошибку, что и выше, Called id for nil…
.
Что происходит?