使用updateUniques()时,Laravel Ardent不保存模型

时间:2014-01-08 18:54:36

标签: php laravel-4 ardent

我正在为管理员面板执行用户编辑工具。我在我的代码中使用updateUniques(),正如Ardent在模型中使用“唯一”规则时所建议的那样。

当我这样做时,它没有任何问题,但模型没有改变。

我的代码:

$user = User::findOrFail($id);

if ($user->exists)
{
    $user::$rules['password'] = (Input::get('password')) ? 'required|confirmed' : '';
    $user::$rules['password_confirmation'] = (Input::get('password')) ? 'required' : '';
}

if ($user->updateUniques())
{
    Session::flash('successes', array_merge((array) Session::get('successes'), ['Pomyślnie zmieniono użytkownika']));
    return Redirect::route('users.show', ['users'   =>  $user->id]);
}
else
{
    return Redirect::route('users.edit', ['users'   =>  $user->id])
    ->withErrors($user->errors())
    ->withInput(Input::except('password'));
}

1 个答案:

答案 0 :(得分:1)

当它去除它时,我注意到它没有用新数据填充模型。经过一番谷歌搜索后,我想出了一个解决方案。

我只需要在我的模型中添加以下内容:

public $forceEntityHydrationFromInput = true;
public $autoPurgeRedundantAttributes = true;