首页 > 解决方案 > Laravel - 未定义的变量:多个提交按钮中的请求

问题描述

在我的 Laravel-5.8 应用程序中,我有两个用于不同目的的提交按钮:

控制器

public function store(StoreLeaveRequestRequest $request)
{
    DB::beginTransaction(); 
    try {  
    //check which submit was clicked on
    if ($request->has('apply')) {

    $leaverequest                           = new HrLeaveRequest;
    $leaverequest->authorized_days          = $request->authorized_days;
    $leaverequest->available_days           = $request->available_days;
    $leaverequest->no_of_days               = $days;
            if($employeelinemanagerid == $employeehodid )
            {
                $leaverequest->line_manager_notified    = 1;   
                $leaverequest->hod_notified    = 1; 
            }else{
                $leaverequest->line_manager_notified    = 1;
            }  
    $leaverequest->save();       

            $this->getLineManagerUserId();


    } elseif($request->has('draft')) {                       

    $leaverequest                           = new HrLeaveRequest;
    $leaverequest->authorized_days          = $request->authorized_days;
    $leaverequest->available_days           = $request->available_days;
    $leaverequest->no_of_days               = $days;
    $leaverequest->save();                
    }           

    DB::commit();     
        Session::flash('success', 'Leave Request is created successfully');
        return redirect()->route('service.leave_requests.index');        
    } 
    catch (Exception $exception) 
    {
        dd($exception->getMessage());
    DB::rollback();
        Session::flash('error', 'Action failed!');
        return redirect()->route('service.leave_requests.index');  
    }        
}

看法

   <form  action="{{route('service.leave_requests.store')}}" method="post" class="form-horizontal" enctype="multipart/form-data">
       {{csrf_field()}}
       <div class="card-body">
        <div class="form-body">
        <div class="row">             

       </div>
     </div>
    </div>          
    <!-- /.card-body -->
    <div class="card-footer">
            <button type="submit" name="apply" class="btn btn-primary">Submit</button>
            <button type="submit" name="draft" class="btn btn-warning">Save as Draft</button>
    </div>  

    </form>

我将 name="apply" 用于 ($request->has('apply'))

和 name="draft" for ($request->has('draft'))

当我单击任何提交按钮时,出现此错误:

“未定义的变量:请求”

我试着检查,我不知道错误来自哪里

我哪里弄错了?

请协助。

谢谢

标签: laravel

解决方案


推荐阅读