Laravel-如何更新复选框字段值

Laravel-如何更新复选框字段值,laravel,Laravel,使用Laravel-5.8,我已经能够将数据保存到数据库中,包括复选框字段 protected $fillable = [ 'appraisal_name', 'is_current', 'appraisal_start', 'appraisal_end', ]; 创建.blade {{csrf_field()}} 目前的评估结果如何? {{trans('global.save')} 取消 在编辑刀片中,将复选框代码更新如下: <input type=

使用Laravel-5.8,我已经能够将数据保存到数据库中,包括复选框字段

protected $fillable = [
    'appraisal_name',
    'is_current',
    'appraisal_start',
    'appraisal_end',
];
创建.blade


{{csrf_field()}}
目前的评估结果如何?
{{trans('global.save')}
取消

在编辑刀片中,将复选框代码更新如下:

<input type="checkbox" class="form-control"  name="is_current" @if($identity->is_current == 1) checked @endif value="{{old('is_current')}}">
在存储功能中,更改以下内容:

public function update(UpdateAppraisalIdentityRequest $request, $id)
{
    abort_unless(\Gate::allows('appraisal_identity_edit'), 403);

    $appraisalStart = Carbon::parse($request->appraisal_start);
    $appraisalEnd = Carbon::parse($request->appraisal_end);
    $submissionStart = Carbon::parse($request->submission_start);
    $submissionEnd = Carbon::parse($request->submission_end);

    $identity = AppraisalIdentity::find($id);
    $identity->appraisal_name = $request->appraisal_name;
    $identity->appraisal_start = $appraisalStart;
    $identity->appraisal_end = $appraisalEnd;
    $identity->is_current = $request->has('is_current');
    $identity->save();

    // this line update all column to 0 and leave $id field
    AppraisalIdentity::where('id', '!=', $id)->update(['is_current' => 0]);

    Session::flash('success', 'Appraisal Initialization is updated successfully');

    return redirect()->route('appraisal.appraisal_identities.index');
}
public function store(StoreAppraisalIdentityRequest $request)
{
    $identity = AppraisalIdentity::create([
        'appraisal_name'  => $request->appraisal_name,
        'appraisal_start' => $appraisalStart,
        'appraisal_end'   => $appraisalEnd,
        'is_current'      => $request->has('is_current'),
    ]);


    $id = $identity->id;
    // this line update all column to 0 and leave $id field
    AppraisalIdentity::where('id', '!=', $id)->update(['is_current' => 0]);

    Session::flash('success', 'Appraisal Initialization is created successfully');

    return redirect()->route('appraisal.appraisal_identities.index');
}

在编辑刀片中尝试此操作 <
_current==1吗?选中:value=“{{old('is_current')}}>

Ankur Mishra,您已经帮助我解决了第一个问题。第二个还在那里。Thanks@mikefolu请检查更新后的答案,以使表中的其他值为1到0。@Mikefoul如果您的列为enum('0','1'),则添加此行['is_current'=>'0']Ankur Mishra,该方法(评估身份::where('id','!=',$id)->update(['is u current'=>0])仅在更新操作中有效。当我尝试将其应用于控制器的创建(存储)操作时,出现以下错误:未定义变量:id@mikefolu这是因为存储函数中不存在id变量。
public function update(UpdateAppraisalIdentityRequest $request, $id)
{
    abort_unless(\Gate::allows('appraisal_identity_edit'), 403);

    $appraisalStart = Carbon::parse($request->appraisal_start);
    $appraisalEnd = Carbon::parse($request->appraisal_end);
    $submissionStart = Carbon::parse($request->submission_start);
    $submissionEnd = Carbon::parse($request->submission_end);

    $identity = AppraisalIdentity::find($id);
    $identity->appraisal_name = $request->appraisal_name;
    $identity->appraisal_start = $appraisalStart;
    $identity->appraisal_end = $appraisalEnd;
    $identity->is_current = $request->has('is_current');
    $identity->save();

    // this line update all column to 0 and leave $id field
    AppraisalIdentity::where('id', '!=', $id)->update(['is_current' => 0]);

    Session::flash('success', 'Appraisal Initialization is updated successfully');

    return redirect()->route('appraisal.appraisal_identities.index');
}
public function store(StoreAppraisalIdentityRequest $request)
{
    $identity = AppraisalIdentity::create([
        'appraisal_name'  => $request->appraisal_name,
        'appraisal_start' => $appraisalStart,
        'appraisal_end'   => $appraisalEnd,
        'is_current'      => $request->has('is_current'),
    ]);


    $id = $identity->id;
    // this line update all column to 0 and leave $id field
    AppraisalIdentity::where('id', '!=', $id)->update(['is_current' => 0]);

    Session::flash('success', 'Appraisal Initialization is created successfully');

    return redirect()->route('appraisal.appraisal_identities.index');
}