当我创建一个任务时,会调用一个 ajax 函数来发送特定的参数数据。它工作得很好。然后我安装了“wicked_pdf”和“wkhtmltopdf-binary”。在得知我在 Windows 上使用此工具时遇到问题后,我使用“gem uninstall wicked_pdf/wkhtmltopdf-binary”删除了它们。(我手动删除了所有 wicked_pdf 配置文件)。在此之后,当我创建一个新任务时,我的 Rails 应用程序(Windows)上出现此错误:“参数丢失或值为空:任务”。如果我删除 ajax 代码,它可以正常工作,但不像以前那样。
Ajax(运行良好):
$( "#new_task" ).submit(function(event) {
event.preventDefault();
var value = $('#task_value').val().replace(assignee,'');
value.replace(/ /g,'');
$('#new_task').find('input[name="task[value]"]').val().replace(assignee,'');
$.ajax({
url: "/tasks",
type: "post",
contentType: "application/json",
data: JSON.stringify({ assignee: assignee, value: value }),
success: function(data) {
alert('successfully');
},
error: function(xhr, textStatus, error) {
alert(xhr.statusText+" "+textStatus+" "+error);
}
});
});
控制器(它正在工作,我从未改变它):
def create
@task = Task.new(task_params)
@task.user = current_user
set_date
set_category
respond_to do |format|
if @task.save
format.html { redirect_to tasks_url, notice: 'Task was successfully created. '+task_params.inspect}
#format.html { redirect_to @task, notice: 'Task was successfully created.' }
format.json { render :show, status: :created, location: @task }
else
format.html { render :new }
format.json { render json: @task.errors, status: :unprocessable_entity }
end
end
end
然后在索引视图中,我有这个<%= render 'form', task: @task %>
标准表单的部分内容(值并提交,带有创建操作)。有什么问题?我搞砸了 wicked_pdf?