我要回去编写一个包含任务项目的基本应用程序。在我的项目展示视图中,我想列出任务,还包括一个表单。当我连线这一切时,我得到310重定向循环。已经有一段时间了,因为我从头开始写任何东西,所以我会很感激地看一下我的代码。
控制器代码:
def show
@project = Project.find(params[:id])
@task = @project.tasks.new(params[:task])
if @task.save
redirect_to @project, :notice => "Task added"
else
render action: :show
end
end
查看代码:
<%= @project.project_name %>
<%= form_for(@task) do |m| %>
<%= m.label :Task %>
<%= m.text_field :task_name %>
<%= m.button :submit %>
<% end %>
<% @project.tasks.each do |t| %>
<%= t.task_name %>
<% end %>
project.rb
has_many :tasks
task.rb
belongs_to :project
答案 0 :(得分:0)
您正在重定向到@project
,这被解释为含义,重定向到@product
的显示页面。但是你从显示页面调用重定向,因此重定向循环:
通常,您不会在show
中创建记录,而是在create
中创建记录。你这样做的原因是什么?