我正在更新APIendpoint中的数据。正如我所说,我使用表单请求验证将验证与控制器分开。
这适用于存储请求。
但是,当我试图更新下面提到的单个数据时,响应返回以下响应数据。
因为,数据已经存储在数据库中。当我发送更新数据的请求时...应该返回更新的数据。但是,它不返回。
需要帮助来解决这个问题。
正文中的JSON数据:
{
"title": "Question Changed 2"
}
当前响应:
{
"question_type": [
"Question Type is Required!"
],
"question": [
"Question is Required!"
],
"is_required": [
"Is Require Value is Required"
]
}
问题要求:
public function rules()
{
return [
'question_type' => 'required | min:3 | max:10',
'title' => 'required | min:5 | max:100',
'question' => 'required | min:5 | max:255',
'description' => 'min:10 | max:255',
'is_required' => 'required',
];
}
更新:
public function update(QuestionRequest $request, Question $question)
{
$question = $question->update($request->all());
return response()->json($question, 200);
}
`return [
'question_type' => 'sometimes|required | min:3 | max:10',
'title' => 'sometimes|required | min:5 | max:100',
'question' => 'sometimes|required | min:5 | max:255',
'description' => 'sometimes|min:10 | max:255',
'is_required' => 'sometimes|required',
];
如果有人需要解决方案,我正在更新答案:
我只是将条件逻辑放在请求验证规则中,如下所示。根据@ascsoftw添加了更新数据的时间。
public function rules()
{
switch($this->method())
{
case 'POST':
{
return [
'question_type' => 'required | min:3 | max:10',
'title' => 'required | min:5 | max:100',
'question' => 'required | min:5 | max:255',
'description' => 'min:10 | max:255',
'is_required' => 'required',
];
}
break;
case 'PUT':
{
return [
'question_type' => 'sometimes | required | min:3 | max:10',
'title' => 'sometimes | required | min:5 | max:100',
'question' => 'sometimes | required | min:5 | max:255',
'description' => 'sometimes | min:10 | max:255',
'is_required' => 'sometimes | required',
];
}
break;
default:
break;
}
}
您需要使用文档中提到的有时验证规则
在某些情况下,您可能希望仅在输入数组中存在字段时才对该字段运行验证检查。要快速完成此操作,请将有时规则添加到规则列表中
您可以将规则
数组更改为
return [
'question_type' => 'sometimes|required | min:3 | max:10',
'title' => 'sometimes|required | min:5 | max:100',
'question' => 'sometimes|required | min:5 | max:255',
'description' => 'sometimes|min:10 | max:255',
'is_required' => 'sometimes|required',
];
这样,只有在请求中存在这些字段时,才会运行对这些字段的验证。
尝试使用PUT请求更新数据。但是,数据没有更新和返回邮递员中的以前的数据。 邮递员提出要求: 邮递员回复: 我也尝试过使用findByIdAndUpdate。没有得到结果。任何帮助都将不胜感激。 控制器: 路由器:
我对Android系统是新手。我想上传图像作为表单数据使用改型后的方法。我正在使用 这是我的请求体。
嘿,伙计们,我正在使用Laravel5.7,我正试图发出一个ajax post请求来更新我的数据库。ajax将基于checkbox on change函数发布。例如,如果我关闭复选框,它将发送一个请求,并将我的状态更新为my表中的。尝试之后,我出现了一个错误。有人注意到我做错了什么吗?抱歉,如果我的代码中有一些错误的代码或语法,因为我对Ajax非常陌生。任何帮助都将不胜感激。 AJAX 路线 控制
如何使用复选框使用Ajax仅更新表的一列? 我想使用复选框并更新我的列,值将是或。如果选中值为,否则。 是我列的名称 是我的行id 控制器功能 不知道怎么处理这个零件! 我的最新代码: 我的开关按钮未按预期工作,对于值打开,对于值关闭,开关始终处于关闭状态 问题是为"什么是PHP运算符"?"":"打电话来,他们是做什么的?"解释了我必须使用
问题内容: 我对/ 有问题。我的数据表未刷新/更新。我正在使用,根据代码,一切都很好,并且没有任何错误。我也有一个带有分页的表,这就是为什么我使用动作监听器和按钮“上一个”和“下一个”的原因。我正在从其他函数传递到在is中的类中编码的函数 。问题是我填充了包含表数据的数组,但是表不会更新/刷新它。这是我的代码。谢谢前进。 大编辑 旧代码已删除。我添加了新代码,可以帮助您了解我的问题。希望这会有所帮
出于某种原因,当这个JTable被调用时,它没有任何变化(这个方法在用户提交SQL查询后更新JTable)。 给定:验证数据向量和列名称向量是否正确填充。JTable 是一个私有类变量。 有什么想法吗?