propel/generated-classes/Base/User.php
/**
     * Persists this object to the database.
     *
     * If the object is new, it inserts it; otherwise an update is performed.
     * All modified related objects will also be persisted in the doSave()
     * method.  This method wraps all precipitate database operations in a
     * single transaction.
     *
     * @param      ConnectionInterface $con
     * @return int             The number of rows affected by this insert/update and any referring fk objects' save() operations.
     * @throws PropelException
     * @see doSave()
     */
Persists this object to the database.
If the object is new, it inserts it; otherwise an update is performed.
All modified related objects will also be persisted in the doSave()
method.  This method wraps all precipitate database operations in a
single transaction.

@param      ConnectionInterface $con
@return int             The number of rows affected by this insert/update and any referring fk objects' save() operations.
@throws PropelException
@see doSave()
Persists this object to the database . If the object is new it inserts it ; otherwise an update is performed . All modified related objects will also be persisted in the doSave () method . This method wraps all precipitate database operations in a single transaction . @param ConnectionInterface $con @return int The number of rows affected by this insert / update and any referring fk objects ' save () operations . @throws PropelException @see doSave ()
public function save(ConnectionInterface $con = null)
    {
        if ($this->isDeleted()) {
            throw new PropelException("You cannot save an object that has been deleted.");
        }
        if ($con === null) {
            $con = Propel::getServiceContainer()->getWriteConnection(UserTableMap::DATABASE_NAME);
        }
        $con->beginTransaction();
        $isInsert = $this->isNew();
        try {
            $ret = $this->preSave($con);
            if ($isInsert) {
                $ret = $ret && $this->preInsert($con);
                if (!$this->isColumnModified(UserTableMap::CREATED_AT)) {
                    $this->setCreatedAt(time());
                }
                if (!$this->isColumnModified(UserTableMap::UPDATED_AT)) {
                    $this->setUpdatedAt(time());
                }
            } else {
                $ret = $ret && $this->preUpdate($con);
                if ($this->isModified() && !$this->isColumnModified(UserTableMap::UPDATED_AT)) {
                    $this->setUpdatedAt(time());
                }
            }
            if ($ret) {
                $affectedRows = $this->doSave($con);
                if ($isInsert) {
                    $this->postInsert($con);
                } else {
                    $this->postUpdate($con);
                }
                $this->postSave($con);
                UserTableMap::addInstanceToPool($this);
            } else {
                $affectedRows = 0;
            }
            $con->commit();
            return $affectedRows;
        } catch (Exception $e) {
            $con->rollBack();
            throw $e;
        }
    }
public function save ( ConnectionInterface $ con = null ) { if ( $ this -> isDeleted ( ) ) { throw new PropelException ( " You cannot save an object that has been deleted. " ) ; } if ( $ con === null ) { $ con = Propel :: getServiceContainer ( ) -> getWriteConnection ( UserTableMap :: DATABASE_NAME ) ; } $ con -> beginTransaction ( ) ; $ isInsert = $ this -> isNew ( ) ; try { $ ret = $ this -> preSave ( $ con ) ; if ( $ isInsert ) { $ ret = $ ret && $ this -> preInsert ( $ con ) ; if ( ! $ this -> isColumnModified ( UserTableMap :: CREATED_AT ) ) { $ this -> setCreatedAt ( time ( ) ) ; } if ( ! $ this -> isColumnModified ( UserTableMap :: UPDATED_AT ) ) { $ this -> setUpdatedAt ( time ( ) ) ; } } else { $ ret = $ ret && $ this -> preUpdate ( $ con ) ; if ( $ this -> isModified ( ) && ! $ this -> isColumnModified ( UserTableMap :: UPDATED_AT ) ) { $ this -> setUpdatedAt ( time ( ) ) ; } } if ( $ ret ) { $ affectedRows = $ this -> doSave ( $ con ) ; if ( $ isInsert ) { $ this -> postInsert ( $ con ) ; } else { $ this -> postUpdate ( $ con ) ; } $ this -> postSave ( $ con ) ; UserTableMap :: addInstanceToPool ( $ this ) ; } else { $ affectedRows = 0 ; } $ con -> commit ( ) ; return $ affectedRows ; } catch ( Exception $ e ) { $ con -> rollBack ( ) ; throw $ e ; } }
Persists this object to the database.
Persists this object to the database .
// timestampable behavior // timestampable behavior