【发布时间】:2014-05-08 12:58:49
【问题描述】:
我正在尝试向 Items 模型中的项目提交更新。但是,当更新方法接收到更新但不会抛出错误时,Ardent 从未真正执行更新:
public function update($id)
{
$item = Item::findOrFail($id);
if ($item->save()) {
return Redirect::back()->with('message', "Item #$id updated!");
} else {
return Redirect::back()->withInput()->withErrors($item->errors());
}
}
我的控制器逻辑有什么问题?
【问题讨论】:
-
您实际上在哪里更改 $item 的值?
-
第一次尝试 Ardent。我认为它实际上是自动从 Input 中提取的。没有?
-
我不认为 Ardent 有那么神奇 ;) github.com/laravelbook/…
-
我充满希望。 :/ 那么将输入数据传递给 Ardent 进行验证的最简洁的方法是什么?
-
我自己没有使用过水合,但看起来您只需正确设置这些变量($autoHydrateEntityFromInput 和 $forceEntityHydrationFromInput)即可获得您期望的行为。