Skip to content

Conversation

authman
Copy link
Contributor

@authman authman commented Apr 14, 2013

Just like $model->save(), $model->push() needs to return success / fail. I ran into this issue because my app was rolling back the transaction when if (!$model->push()) {} occurred, which of course was returning Null.

With this pull request, if the model's ->save() method or any of the child relationship's ->push() method's fail, it'll return false. This of course may leave the DB in a mixed state, so it is up the the user to encapsulate ->push() in a pDO transaction and roll back if ->push() fails.

L3 Example:

DB::connection()->pdo->beginTransaction();
if (!$model->push())
DB::connection()->pdo->rollBack();
else
DB::connection()->pdo->commit();

Does $model->push() exist in L4? If not, it is really nifty to have. Hint Hint.

taylorotwell added a commit that referenced this pull request May 14, 2013
@taylorotwell taylorotwell merged commit 9871281 into laravel:master May 14, 2013
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants