获取用户是否在 laravel 中 select 从 select 编辑了任何新选项

Get if the user has selected any new option from select in laravel

我正在使用 laravel 背包,在我的更新功能中有一个表格可以使用 laravel 的 edit 按钮进行编辑,该按钮调用更新功能。

在我的表单中,我有一个 expiry_date 和一个 month 字段,可帮助我的客户更新其用户的订阅。一切正常,这是我的更新功能的代码:

public function update(UpdateRequest $request)
{

    date_default_timezone_set('asia/calcutta');
    $month = $request->month;
    $expiry = new Carbon($request->expiry_date);
    $expiry_date = $expiry->addMonths($month);            
    $request['expiry_date'] = $expiry_date;

    // your additional operations before save here
    $redirect_location = parent::updateCrud($request);
    // your additional operations after save here
    // use $this->data['entry'] or $this->crud->entry
    return $redirect_location;
}

现在的问题是:

我想请问有没有什么方法或东西可以帮助我找到那个:

如果 用户点击了 select of month 并且 select 从 select 中选择了一个选项然后只执行 adding month to expiry_date code,如果不是,则仅更新用户的详细信息而不影响原始 expiry_date。

如果不是这样,请帮助我找到正确的方法。

感谢和问候

因为没有人回答这个问题。

我通过以下方式解决了它:

1) 月字段允许空值。

2) 并将月份字段的默认值设置为“0”。

像这样:

   'name' => 'month',
        'label' => "Months",
        'type' => 'select2_from_array',
        'options' => ['0' => '0','1' => '1', '3' => '3', '6' => '6', '12' => '12'],
        'allows_null' => true,
        'value' => '0'
        // 'allows_multiple' => true, // OPTIONAL; needs you to cast this to array in your model;
    ], 'update/create/both'); 

3) 然后在更新函数中我调用了月份的最后一个值,如果它是“0”:

public function update(UpdateRequest $request) {
    date_default_timezone_set('asia/calcutta');
    $month = $request->month;
    if($month != 0)
    {
     $expiry = new Carbon($request->expiry_date);
    $expiry_date = $expiry->addMonths($month);            
    $request['expiry_date'] = $expiry_date;   
    }
    else
    {
        $retained_month  = Tag::find($request->id);
        $month = $retained_month->month;
        $request['month'] = $month;

    }


    // your additional operations before save here
    $redirect_location = parent::updateCrud($request);
    // your additional operations after save here
    // use $this->data['entry'] or $this->crud->entry
    return $redirect_location;
}

这解决了问题!! 谢谢