更新在 Laravel 中不起作用,如果我在数据库中使用与列名不同的文本框名称

萨丽塔·夏尔马

我的表国家有两个字段country_idcountry_name.

文本框正在使用名称 country

<input type="text" class="form-control" value="{{Session::get('name')}}" name="country" >

国家/地区控制器代码是

public function update(Request $request, $id)
{
 $this->validate($request, [
 'country' => 'required|country_name',
  ]);
   $updateCountry = $request->all();

    //update  data
    country::find($id)->update($updateCountry);
    return redirect('/admin/country');
}

我的模型是

 class country extends Model
{
protected $table = 'country';
protected $fillable = ['country_name'];
public $timestamps = false;
protected $primaryKey = 'country_id';
}
查马拉·阿贝塞卡拉

您需要将输入字段中的名称更改为,country_name因为它应该与列名称匹配,因此它应该是这样的,

<input type="text" class="form-control" value="{{Session::get('name')}}" name="country_name" >

如果你不想改变它,那么你应该改变你将数组发送到update方法的控制器所以像这样的事情,

public function update(Request $request, $id)
{
 $this->validate($request, [
 'country' => 'required',
  ]);


    //update  data
    country::find($id)->update([
'country_name' => $request->country
]);
    return redirect('/admin/country');
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章