0
我有一个用于创建显示在项目/ show和tasks/show上的任务的窗体。Rails:如何强制表单发布而不是修补?
在projects/show上的表单创建新任务很好,但是在任务/表明它想要编辑任务,因为我需要从我的任务控制器的show动作中调用任务ID。
我需要修改此表单以始终创建新任务。
我试过method: post
但是rails仍然会将<input type="hidden" name="_method" value="patch" />
插入到HTML中。
这里是我的控制器和形式:
# Tasks Controller
def show
@projects = Project.all
@project = Project.find(params[:project_id])
@task = Task.find(params[:id])
@tasks = @project.tasks.all
end
def create
@project = Project.find(params[:project_id])
@task = @project.tasks.new(task_params)
@task.save
redirect_to @project
end
#Form
<%= form_for([@project, @task]) do |f| %>
<%= f.text_field :title %>
<%= f.submit %>
<% end %>
有没有办法迫使轨道总是从这种形式创造新的任务?
你试过'方法:: post'吗?你在问题的'post'之前错过了冒号。 –
嗨,当我意识到我跳过结肠时,我很兴奋,但它仍然不起作用。当我使用'<%= form_for([@ project,@task],method :: post)do | f | %>'我仍然在HTML中获得'。 – interfab
你有没有把你的项目托管在heroku或任何地方?这个问题可能与jQuery UJs有关。检查浏览器的控制台是否有任何错误或警告。 –