如何管理laravel大更新方法

时间:2019-07-16 11:19:06

标签: php laravel

我有一个如下所示的更新方法,它太大了,我想对它进行一些管理,以减少控制器中的位置,并使控制器更整洁,现在我想知道是否有任何方法可以使其作为服务或这是我的更新方法,例如:

      public function update(Request $request, Something $something)
    {

        $something->somefield = $request->get('field1');
        $something->somefield = $request->get('field1');
        $something->somefield = $request->get('field1');
        $something->somefield = $request->get('field1');
        $something->save();
    return response()->json($something, 200);

  //consider i may have like 20 fields here

3 个答案:

答案 0 :(得分:1)

使用update()方法更新所有字段

public function update(Request $request, Something $something)
{

        $something->update($request->all());
        return response()->json($something, 200);

}

答案 1 :(得分:1)

对我来说,执行此操作的合适方法是将表单的 input 字段命名为表格的表字段。然后,您可以使用$something->update($request->all());

答案 2 :(得分:1)

如果传递的db中不存在字段,请使用以下代码。

$something->update($request->only($field1, $field2));