Laravel ardiente no es un modelo de ahorro cuando use Utdateuniques ()
Pregunta
Estoy haciendo la facilidad de edición de usuarios para mi panel de administración.Estoy usando Updateuniques () en mi código, según lo recomendado por Ardent cuando tenga reglas "únicas" en el modelo.
Cuando lo hago, pasa sin ningún problema, pero el modelo no ha cambiado.
Mi código:
$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'));
}
Solución
Al depurarlo, noté que no hidrata el modelo con nuevos datos.Después de bit de googling, se me ocurrió una solución.
Solo necesitaba agregar seguimiento a mi modelo:
public $forceEntityHydrationFromInput = true;
public $autoPurgeRedundantAttributes = true;
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow