我有一个带有表单的“编辑页面”,我想更新一些数据。
我的模特:
Actividad.php:
public function materials()
{
return $this->belongsToMany('Material', 'actividad_material')->withTimestamps();
}
和Material.php:
public function actividads()
{
return $this->belongsToMany('Actividad', 'actividad_material')->withTimestamps();
}
我的代码(控制器):
public function update($id)
{
$input = array_except(Input::all(), '_method');
$v = Validator::make($input, Actividad::$rules);
// return 'Hala';
if($v->passes())
{
$actividad = Actividad::find($id);
$material_id = Input::get('material_id');
$actividad->materials()->sync($material_id);
Actividad::find($id)->update($input);
// return 'hola';
return Redirect::route('actividads.index');
}
return Redirect::back()->withErrors($v);
}
该应用程序给我一个错误:
SQLSTATE [42S22]:未找到列:1054'字段列表'中的未知列'material_id'(SQL:update
actividads
setupdated_at
= 2014-07-20 16:20:03,material_id
= 1其中id
= 16)
我想这是因为它正在寻找我的'actividads'中尚未存在的专栏!也许我必须改变$input = array_except(Input::all(), '_method');
...我想我已经说过了,表格中的每一个输入都在我的'Actividad'中,这不是真的。我需要使用'material_id'更新我的数据透视表。
非常感谢你!