# Class BaseAccessory

Base class that represents a row from the 'accessory' table.

  BaseObject
  Thelia\Model\om\BaseAccessory implements Persistent

#### Direct known subclasses

Thelia\Model\Accessory
Abstract
Namespace: Thelia\Model\om
Package: propel\generator\Thelia\Model\om
Located at core/lib/Thelia/Model/om/BaseAccessory.php

Methods summary
`public integer` | # `getId( )` Get the [id] column value. Get the [id] column value. #### Returns `integer`
`public integer` | # `getProductId( )` Get the [product_id] column value. Get the [product_id] column value. #### Returns `integer`
`public integer` | # `getAccessory( )` Get the [accessory] column value. Get the [accessory] column value. #### Returns `integer`
`public integer` | # `getPosition( )` Get the [position] column value. Get the [position] column value. #### Returns `integer`
`public mixed` | # `getCreatedAt( string $format = 'Y-m-d H:i:s' )` Get the [optionally formatted] temporal [created_at] column value. Get the [optionally formatted] temporal [created_at] column value. #### Parameters $format `string` $format The date/time format string (either date()-style or strftime()-style). If format is null, then the raw DateTime object will be returned. #### Returns `mixed` Formatted date/time value as string or DateTime object (if format is null), null if column is null, and 0 if column value is 0000-00-00 00:00:00 #### Throws `PropelException` - if unable to parse/validate the date/time value.
`public mixed` | # `getUpdatedAt( string $format = 'Y-m-d H:i:s' )` Get the [optionally formatted] temporal [updated_at] column value. Get the [optionally formatted] temporal [updated_at] column value. #### Parameters $format `string` $format The date/time format string (either date()-style or strftime()-style). If format is null, then the raw DateTime object will be returned. #### Returns `mixed` Formatted date/time value as string or DateTime object (if format is null), null if column is null, and 0 if column value is 0000-00-00 00:00:00 #### Throws `PropelException` - if unable to parse/validate the date/time value.
`public `Thelia\Model\Accessory`` | # `setId( integer $v )` Set the value of [id] column. Set the value of [id] column. #### Parameters $v `integer` $v new value #### Returns ``Thelia\Model\Accessory`` The current object (for fluent API support)
`public `Thelia\Model\Accessory`` | # `setProductId( integer $v )` Set the value of [product_id] column. Set the value of [product_id] column. #### Parameters $v `integer` $v new value #### Returns ``Thelia\Model\Accessory`` The current object (for fluent API support)
`public `Thelia\Model\Accessory`` | # `setAccessory( integer $v )` Set the value of [accessory] column. Set the value of [accessory] column. #### Parameters $v `integer` $v new value #### Returns ``Thelia\Model\Accessory`` The current object (for fluent API support)
`public `Thelia\Model\Accessory`` | # `setPosition( integer $v )` Set the value of [position] column. Set the value of [position] column. #### Parameters $v `integer` $v new value #### Returns ``Thelia\Model\Accessory`` The current object (for fluent API support)
`public `Thelia\Model\Accessory`` | # `setCreatedAt( mixed $v )` Sets the value of [created_at] column to a normalized version of the date/time value specified. Sets the value of [created_at] column to a normalized version of the date/time value specified. #### Parameters $v `mixed` $v string, integer (timestamp), or DateTime value. Empty strings are treated as null. #### Returns ``Thelia\Model\Accessory`` The current object (for fluent API support)
`public `Thelia\Model\Accessory`` | # `setUpdatedAt( mixed $v )` Sets the value of [updated_at] column to a normalized version of the date/time value specified. Sets the value of [updated_at] column to a normalized version of the date/time value specified. #### Parameters $v `mixed` $v string, integer (timestamp), or DateTime value. Empty strings are treated as null. #### Returns ``Thelia\Model\Accessory`` The current object (for fluent API support)
`public boolean` | # `hasOnlyDefaultValues( )` Indicates whether the columns in this object are only set to default values. Indicates whether the columns in this object are only set to default values. This method can be used in conjunction with isModified() to indicate whether an object is both modified _and_ has some values set which are non-default. #### Returns `boolean` Whether the columns in this object are only been set with default values.
`public integer` | # `hydrate( array $row, integer $startcol = 0, boolean $rehydrate = false )` Hydrates (populates) the object variables with values from the database resultset. Hydrates (populates) the object variables with values from the database resultset. An offset (0-based "start column") is specified so that objects can be hydrated with a subset of the columns in the resultset rows. This is needed, for example, for results of JOIN queries where the resultset row includes columns from two or more tables. #### Parameters $row `array` $row The row returned by PDOStatement->fetch(PDO::FETCH_NUM) $startcol `integer` $startcol 0-based offset column which indicates which restultset column to start with. $rehydrate `boolean` $rehydrate Whether this object is being re-hydrated from the database. #### Returns `integer` next starting column #### Throws `PropelException` - Any caught Exception will be rewrapped as a PropelException.
`public` | # `ensureConsistency( )` Checks and repairs the internal consistency of the object. Checks and repairs the internal consistency of the object. This method is executed after an already-instantiated object is re-hydrated from the database. It exists to check any foreign keys to make sure that the objects related to the current object are correct based on foreign key. You can override this method in the stub class, but you should always invoke the base method from the overridden method (i.e. parent::ensureConsistency()), in case your model changes. #### Throws `PropelException`
`public` | # `reload( boolean $deep = false, PropelPDO $con = null )` Reloads this object from datastore based on primary key and (optionally) resets all associated objects. Reloads this object from datastore based on primary key and (optionally) resets all associated objects. This will only work if the object has been saved and has a valid primary key set. #### Parameters $deep `boolean` $deep (optional) Whether to also de-associated any related objects. $con `PropelPDO` $con (optional) The PropelPDO connection to use. #### Throws `PropelException` - if this object is deleted, unsaved or doesn't have pk match in db
`public` | # `delete( PropelPDO $con = null )` Removes this object from datastore and sets delete attribute. Removes this object from datastore and sets delete attribute. #### Parameters $con `PropelPDO` $con #### Throws `PropelException` `Exception` #### See BaseObject::setDeleted() BaseObject::isDeleted()
`public integer` | # `save( PropelPDO $con = null )` Persists this object to the database. 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. #### Parameters $con `PropelPDO` $con #### Returns `integer` The number of rows affected by this insert/update and any referring fk objects' save() operations. #### Throws `PropelException` `Exception` #### See ``Thelia\Model\om\BaseAccessory::doSave()``
`protected integer` | # `doSave( PropelPDO $con )` Performs the work of inserting or updating the row in the database. Performs the work of inserting or updating the row in the database. If the object is new, it inserts it; otherwise an update is performed. All related objects are also updated in this method. #### Parameters $con `PropelPDO` $con #### Returns `integer` The number of rows affected by this insert/update and any referring fk objects' save() operations. #### Throws `PropelException` #### See ``Thelia\Model\om\BaseAccessory::save()``
`protected` | # `doInsert( PropelPDO $con )` Insert the row in the database. Insert the row in the database. #### Parameters $con `PropelPDO` $con #### Throws `PropelException` #### See ``Thelia\Model\om\BaseAccessory::doSave()``
`protected` | # `doUpdate( PropelPDO $con )` Update the row in the database. Update the row in the database. #### Parameters $con `PropelPDO` $con #### See ``Thelia\Model\om\BaseAccessory::doSave()``
`public array` | # `getValidationFailures( )` Gets any ValidationFailed objects that resulted from last call to validate(). Gets any ValidationFailed objects that resulted from last call to validate(). #### Returns `array` ValidationFailed[] #### See ``Thelia\Model\om\BaseAccessory::validate()``
`public boolean` | # `validate( mixed $columns = null )` Validates the objects modified field values and all objects related to this table. Validates the objects modified field values and all objects related to this table. If $columns is either a column name or an array of column names only those columns are validated. #### Parameters $columns `mixed` $columns Column name or an array of column names. #### Returns `boolean` Whether all columns pass validation. #### See ``Thelia\Model\om\BaseAccessory::doValidate()`` ``Thelia\Model\om\BaseAccessory::getValidationFailures()``
`protected mixed` | # `doValidate( array $columns = null )` This function performs the validation work for complex object models. This function performs the validation work for complex object models. In addition to checking the current object, all related objects will also be validated. If all pass then `<span class="php-keyword1">true</span>` is returned; otherwise an aggreagated array of ValidationFailed objects will be returned. #### Parameters $columns `array` $columns Array of column names to validate. #### Returns `mixed` `<span class="php-keyword1">true</span>` if all validations pass; array of `ValidationFailed` objets otherwise.
`public mixed` | # `getByName( string $name, string $type = Thelia\Model\om\BasePeer::TYPE_PHPNAME )` Retrieves a field from the object by name passed in as a string. Retrieves a field from the object by name passed in as a string. #### Parameters $name `string` $name name $type `string` $type The type of fieldname the $name is of: one of the class type constants BasePeer::TYPE_PHPNAME, BasePeer::TYPE_STUDLYPHPNAME BasePeer::TYPE_COLNAME, BasePeer::TYPE_FIELDNAME, BasePeer::TYPE_NUM. Defaults to BasePeer::TYPE_PHPNAME #### Returns `mixed` Value of field.
`public mixed` | # `getByPosition( integer $pos )` Retrieves a field from the object by Position as specified in the xml schema. Zero-based. Retrieves a field from the object by Position as specified in the xml schema. Zero-based. #### Parameters $pos `integer` $pos position in xml schema #### Returns `mixed` Value of field at $pos
`public array` | # `toArray( string $keyType = Thelia\Model\om\BasePeer::TYPE_PHPNAME, boolean $includeLazyLoadColumns = true, array $alreadyDumpedObjects = array(), boolean $includeForeignObjects = false )` Exports the object as an array. Exports the object as an array. You can specify the key type of the array by passing one of the class type constants. #### Parameters $keyType `string` $keyType (optional) One of the class type constants BasePeer::TYPE_PHPNAME, BasePeer::TYPE_STUDLYPHPNAME, BasePeer::TYPE_COLNAME, BasePeer::TYPE_FIELDNAME, BasePeer::TYPE_NUM. Defaults to BasePeer::TYPE_PHPNAME. $includeLazyLoadColumns `boolean` $includeLazyLoadColumns (optional) Whether to include lazy loaded columns. Defaults to true. $alreadyDumpedObjects `array` $alreadyDumpedObjects List of objects to skip to avoid recursion $includeForeignObjects `boolean` $includeForeignObjects (optional) Whether to include hydrated related objects. Default to FALSE. #### Returns `array` an associative array containing the field names (as keys) and field values
`public` | # `setByName( string $name, mixed $value, string $type = Thelia\Model\om\BasePeer::TYPE_PHPNAME )` Sets a field from the object by name passed in as a string. Sets a field from the object by name passed in as a string. #### Parameters $name `string` $name peer name $value `mixed` $value field value $type `string` $type The type of fieldname the $name is of: one of the class type constants BasePeer::TYPE_PHPNAME, BasePeer::TYPE_STUDLYPHPNAME BasePeer::TYPE_COLNAME, BasePeer::TYPE_FIELDNAME, BasePeer::TYPE_NUM. Defaults to BasePeer::TYPE_PHPNAME
`public` | # `setByPosition( integer $pos, mixed $value )` Sets a field from the object by Position as specified in the xml schema. Zero-based. Sets a field from the object by Position as specified in the xml schema. Zero-based. #### Parameters $pos `integer` $pos position in xml schema $value `mixed` $value field value
`public` | # `fromArray( array $arr, string $keyType = Thelia\Model\om\BasePeer::TYPE_PHPNAME )` Populates the object using an array. Populates the object using an array. This is particularly useful when populating an object from one of the request arrays (e.g. $_POST). This method goes through the column names, checking to see whether a matching key exists in populated array. If so the setByName() method is called for that column. You can specify the key type of the array by additionally passing one of the class type constants BasePeer::TYPE_PHPNAME, BasePeer::TYPE_STUDLYPHPNAME, BasePeer::TYPE_COLNAME, BasePeer::TYPE_FIELDNAME, BasePeer::TYPE_NUM. The default key type is the column's BasePeer::TYPE_PHPNAME #### Parameters $arr `array` $arr An array to populate the object from. $keyType `string` $keyType The type of keys the array uses.
`public Criteria` | # `buildCriteria( )` Build a Criteria object containing the values of all modified columns in this object. Build a Criteria object containing the values of all modified columns in this object. #### Returns `Criteria` The Criteria object containing all modified values.
`public Criteria` | # `buildPkeyCriteria( )` Builds a Criteria object containing the primary key for this object. Builds a Criteria object containing the primary key for this object. Unlike buildCriteria() this method includes the primary key values regardless of whether or not they have been modified. #### Returns `Criteria` The Criteria object containing value(s) for primary key(s).
`public integer` | # `getPrimaryKey( )` Returns the primary key for this object (row). Returns the primary key for this object (row). #### Returns `integer`
`public` | # `setPrimaryKey( integer $key )` Generic method to set the primary key (id column). Generic method to set the primary key (id column). #### Parameters $key `integer` $key Primary key.
`public boolean` | # `isPrimaryKeyNull( )` Returns true if the primary key for this object is null. Returns true if the primary key for this object is null. #### Returns `boolean`
`public` | # `copyInto( object $copyObj, boolean $deepCopy = false, boolean $makeNew = true )` Sets contents of passed object to values from current object. Sets contents of passed object to values from current object. If desired, this method can also make copies of all associated (fkey referrers) objects. #### Parameters $copyObj `object` $copyObj An object of Accessory (or compatible) type. $deepCopy `boolean` $deepCopy Whether to also copy all rows that refer (by fkey) to the current row. $makeNew `boolean` $makeNew Whether to reset autoincrement PKs and make the object new. #### Throws `PropelException`
`public `Thelia\Model\Accessory`` | # `copy( boolean $deepCopy = false )` Makes a copy of this object that will be inserted as a new row in table when saved. It creates a new object filling in the simple attributes, but skipping any primary keys that are defined for the table. Makes a copy of this object that will be inserted as a new row in table when saved. It creates a new object filling in the simple attributes, but skipping any primary keys that are defined for the table. If desired, this method can also make copies of all associated (fkey referrers) objects. #### Parameters $deepCopy `boolean` $deepCopy Whether to also copy all rows that refer (by fkey) to the current row. #### Returns ``Thelia\Model\Accessory`` Clone of current object. #### Throws `PropelException`
`public `Thelia\Model\AccessoryPeer`` | # `getPeer( )` Returns a peer instance associated with this om. Returns a peer instance associated with this om. Since Peer classes are not to have any instance attributes, this method returns the same instance for all member of this class. The method could therefore be static, but this would prevent one from overriding the behavior. #### Returns ``Thelia\Model\AccessoryPeer``
`public `Thelia\Model\Accessory`` | # `setProductRelatedByProductId( `Thelia\Model\Product` $v = null )` Declares an association between this object and a Product object. Declares an association between this object and a Product object. #### Parameters $v ``Thelia\Model\Product`` $v #### Returns ``Thelia\Model\Accessory`` The current object (for fluent API support) #### Throws `PropelException`
`public `Thelia\Model\Product`` | # `getProductRelatedByProductId( PropelPDO $con = null, mixed $doQuery = true )` Get the associated Product object Get the associated Product object #### Parameters $con `PropelPDO` $con Optional Connection object. $doQuery `mixed` $doQuery Executes a query to get the object if required #### Returns ``Thelia\Model\Product`` The associated Product object. #### Throws `PropelException`
`public `Thelia\Model\Accessory`` | # `setProductRelatedByAccessory( `Thelia\Model\Product` $v = null )` Declares an association between this object and a Product object. Declares an association between this object and a Product object. #### Parameters $v ``Thelia\Model\Product`` $v #### Returns ``Thelia\Model\Accessory`` The current object (for fluent API support) #### Throws `PropelException`
`public `Thelia\Model\Product`` | # `getProductRelatedByAccessory( PropelPDO $con = null, mixed $doQuery = true )` Get the associated Product object Get the associated Product object #### Parameters $con `PropelPDO` $con Optional Connection object. $doQuery `mixed` $doQuery Executes a query to get the object if required #### Returns ``Thelia\Model\Product`` The associated Product object. #### Throws `PropelException`
`public` | # `clear( )` Clears the current object and sets all attributes to their default values Clears the current object and sets all attributes to their default values
`public` | # `clearAllReferences( boolean $deep = false )` Resets all references to other model objects or collections of model objects. Resets all references to other model objects or collections of model objects. This method is a user-space workaround for PHP's inability to garbage collect objects with circular references (even in PHP 5.3). This is currently necessary when using Propel in certain daemon or large-volumne/high-memory operations. #### Parameters $deep `boolean` $deep Whether to also clear the references on all referrer objects.
`public string` | # `__toString( )` return the string representation of this object return the string representation of this object #### Returns `string`
`public boolean` | # `isAlreadyInSave( )` return true is the object is in saving state return true is the object is in saving state #### Returns `boolean`
`public `Thelia\Model\Accessory`` | # `keepUpdateDateUnchanged( )` Mark the current object so that the update date doesn't get updated during next save Mark the current object so that the update date doesn't get updated during next save #### Returns ``Thelia\Model\Accessory`` The current object (for fluent API support)

Constants summary
`string` | `PEER` | `'Thelia\\Model\\AccessoryPeer'` | # Peer class name Peer class name

Properties summary
`protected static `Thelia\Model\AccessoryPeer`` | $peer | `` | # The Peer class. Instance provides a convenient way of calling static methods on a class that calling code may not be able to identify. The Peer class. Instance provides a convenient way of calling static methods on a class that calling code may not be able to identify.
`protected boolean` | $startCopy | `false` | # The flag var to prevent infinit loop in deep copy The flag var to prevent infinit loop in deep copy
`protected integer` | $id | `` | # The value for the id field. The value for the id field.
`protected integer` | $product_id | `` | # The value for the product_id field. The value for the product_id field.
`protected integer` | $accessory | `` | # The value for the accessory field. The value for the accessory field.
`protected integer` | $position | `` | # The value for the position field. The value for the position field.
`protected string` | $created_at | `` | # The value for the created_at field. The value for the created_at field.
`protected string` | $updated_at | `` | # The value for the updated_at field. The value for the updated_at field.
`protected `Thelia\Model\Product`` | $aProductRelatedByProductId | `` | #
`protected `Thelia\Model\Product`` | $aProductRelatedByAccessory | `` | #
`protected boolean` | $alreadyInSave | `false` | # Flag to prevent endless save loop, if this object is referenced by another object which falls in this transaction. Flag to prevent endless save loop, if this object is referenced by another object which falls in this transaction.
`protected boolean` | $alreadyInValidation | `false` | # Flag to prevent endless validation loop, if this object is referenced by another object which falls in this transaction. Flag to prevent endless validation loop, if this object is referenced by another object which falls in this transaction.
`protected boolean` | $alreadyInClearAllReferencesDeep | `false` | # Flag to prevent endless clearAllReferences($deep=true) loop, if this object is referenced Flag to prevent endless clearAllReferences($deep=true) loop, if this object is referenced
`protected array` | $validationFailures | `array()` | # Array of ValidationFailed objects. Array of ValidationFailed objects.