请教一下写 API 为什么 store 添加数据成功,update 更新数据失败?
整了好几天了没有发现问题所在,请教高手帮忙看看问题可能出在哪
database/migrations/2020_06_01_211105_create_field_valves_table.php
public function up()
{
Schema::create('field_valves', function (Blueprint $table) {
$table->bigIncrements('id');
$table->text('tag');
$table->integer('user_id')->index();
$table->timestamps();
});
}
app/Models/FieldValve.php
protected $fillable = ['tag'];
public function user()
{
return $this->belongsTo(User::class);
}
app/Http/Resources/FieldValveResource.php 默认
app/Http/Requests/FieldValveRequest.php
public function authorize()
{
return true;
}
public function rules()
{
switch($this->method()) {
case 'POST':
return [
'tag' => 'required|string',
];
break;
case 'PATCH':
return [
'tag' => 'string',
];
break;
}
}
public function attributes()
{
return [
'tag' => '位号',
];
}
app/Http/Controllers/FieldValvesController.php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Models\FieldValve;
use App\Http\Resources\FieldValveResource;
use App\Http\Requests\FieldValveRequest;
class FieldValvesController extends Controller
{
public function store(FieldValveRequest $request, FieldValve $fieldValve)
{
$fieldValve->fill($request->all());
$fieldValve->user_id = $request->user()->id;
$bool = $fieldValve->save();
if (empty($bool)) {
return response([
'code' => 20001,
'message' => '现场阀门创建失败!!!',
], 201);
}
return response([
'code' => 20000,
'message' => '现场阀门创建成功!!!',
], 201);
}
public function update(FieldValveRequest $request, FieldValve $fieldValve)
{
$fieldValve->update($request->all());
return new FieldValveResource($fieldValve);
}
}
新建调试结果
修改调试结果
参考相关教程
6.2. 发布话题《L03 Laravel 教程 - 实战构架 API 服务器 (Laravel 6.x)...
6.3. 修改话题《L03 Laravel 教程 - 实战构架 API 服务器 (Laravel 6.x)...
推荐文章: