将活动的用户可用性编码为布尔值 (Laravel)



我有一个事件列表。用户可以标记其可用性,从而在可用性表中根据其用户 ID、事件 ID 和作为布尔值的可用性创建一个条目。

我在事件显示视图上有两个链接(不是表单按钮(,一个用于可用(真(,一个用于不可用(假(,但卡在后端。我需要三个操作吗?

  1. 将可用性的新记录存储为真
  2. 将可用性的新记录存储为 false
  3. 更新(修补(现有记录的真或假

作为最佳实践,您将如何做到这一点?我觉得一定有一种比这更简单/更干净的方法。

我也坚持使用路线,因为我习惯于根据表单操作数据库。我假设它将是以下作为示例:

Route::get('/events/{event}/unavailable','EventAvailabilityController@unavailable');

如何获取模型的事件 ID?

我会做一个补丁路由,这样我就可以把它设置为 true 或 false(1 个端点(。

Route::patch('/events/{event}/status','EventAvailabilityController@changeStatus');

如果要获取模型的 ID,可以执行以下操作:

public function changeStatus(Request $request, EventModel $eventModel) {
    $request->validate([
        'status' => 'boolean|required'
    ]);
    $event->status = $request->status;
    $event->save();
    return response()->json(['event' => $event]);
}

注意:将事件EventModel替换为模型,changeStatus替换为函数。

最新更新