【问题标题】:Coding user availability for activity as boolean (Laravel)将活动的用户可用性编码为布尔值(Laravel)
【发布时间】:2019-02-11 20:40:24
【问题描述】:

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

我在事件显示视图上有两个链接(不是表单按钮),一个用于可用(true),一个用于不可用(false),但我被后端卡住了。我需要三个动作吗?

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

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

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

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

如何将事件 ID 获取到模型?

【问题讨论】:

    标签: php laravel


    【解决方案1】:

    我会做一个补丁路由,所以我可以将它设置为真或假(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 替换为您的函数。

    【讨论】:

      猜你喜欢
      • 2013-10-08
      • 1970-01-01
      • 2019-04-07
      • 1970-01-01
      • 2018-03-09
      • 2010-10-12
      • 2017-03-07
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多