| Package | system.db.ar |
|---|---|
| Inheritance | class CManyManyRelation » CHasManyRelation » CActiveRelation » CBaseActiveRelation » CComponent |
| Since | 1.0 |
| Source Code | framework/db/ar/CActiveRecord.php |
| Property | Type | Description | Defined By |
|---|---|---|---|
| alias | string | the alias for the table that this relation refers to. | CActiveRelation |
| className | string | name of the related active record class | CBaseActiveRelation |
| condition | string | WHERE clause. | CBaseActiveRelation |
| foreignKey | mixed | the foreign key in this relation | CBaseActiveRelation |
| group | string | GROUP BY clause. | CBaseActiveRelation |
| having | string | HAVING clause. | CBaseActiveRelation |
| index | string | the name of the column that should be used as the key for storing related objects. | CHasManyRelation |
| join | string | how to join with other tables. | CBaseActiveRelation |
| joinOptions | string|array | property for setting post-JOIN operations such as USE INDEX. | CBaseActiveRelation |
| joinType | string | join type. | CActiveRelation |
| junctionForeignKeys | array | list of junction table foreign keys. | CManyManyRelation |
| junctionTableName | string | junction table name. | CManyManyRelation |
| limit | integer | limit of the rows to be selected. | CHasManyRelation |
| name | string | name of the related object | CBaseActiveRelation |
| offset | integer | offset of the rows to be selected. | CHasManyRelation |
| on | string | ON clause. | CActiveRelation |
| order | string | ORDER BY clause. | CBaseActiveRelation |
| params | array | the parameters that are to be bound to the condition. | CBaseActiveRelation |
| scopes | mixed | scopes to apply
Can be set to the one of the following:
|
CActiveRelation |
| select | mixed | list of column names (an array, or a string of names separated by commas) to be selected. | CBaseActiveRelation |
| through | string | the name of the relation that should be used as the bridge to this relation. | CActiveRelation |
| together | boolean | whether this table should be joined with the primary table. | CActiveRelation |
| with | string|array | specifies which related objects should be eagerly loaded when this related object is lazily loaded. | CActiveRelation |
| Method | Description | Defined By |
|---|---|---|
| __call() | Calls the named method which is not a class method. | CComponent |
| __construct() | Constructor. | CBaseActiveRelation |
| __get() | Returns a property value, an event handler list or a behavior based on its name. | CComponent |
| __isset() | Checks if a property value is null. | CComponent |
| __set() | Sets value of a component property. | CComponent |
| __unset() | Sets a component property to be null. | CComponent |
| asa() | Returns the named behavior object. | CComponent |
| attachBehavior() | Attaches a behavior to this component. | CComponent |
| attachBehaviors() | Attaches a list of behaviors to the component. | CComponent |
| attachEventHandler() | Attaches an event handler to an event. | CComponent |
| canGetProperty() | Determines whether a property can be read. | CComponent |
| canSetProperty() | Determines whether a property can be set. | CComponent |
| detachBehavior() | Detaches a behavior from the component. | CComponent |
| detachBehaviors() | Detaches all behaviors from the component. | CComponent |
| detachEventHandler() | Detaches an existing event handler. | CComponent |
| disableBehavior() | Disables an attached behavior. | CComponent |
| disableBehaviors() | Disables all behaviors attached to this component. | CComponent |
| enableBehavior() | Enables an attached behavior. | CComponent |
| enableBehaviors() | Enables all behaviors attached to this component. | CComponent |
| evaluateExpression() | Evaluates a PHP expression or callback under the context of this component. | CComponent |
| getEventHandlers() | Returns the list of attached event handlers for an event. | CComponent |
| getJunctionForeignKeys() | Returns list of junction table foreign keys. | CManyManyRelation |
| getJunctionTableName() | Returns junction table name. | CManyManyRelation |
| hasEvent() | Determines whether an event is defined. | CComponent |
| hasEventHandler() | Checks whether the named event has attached handlers. | CComponent |
| hasProperty() | Determines whether a property is defined. | CComponent |
| mergeWith() | Merges this relation with a criteria specified dynamically. | CHasManyRelation |
| raiseEvent() | Raises an event. | CComponent |
list of junction table foreign keys.
junction table name.
|
public array getJunctionForeignKeys()
| ||
| {return} | array | list of junction table foreign keys. |
public function getJunctionForeignKeys()
{
if ($this->_junctionForeignKeys===null)
$this->initJunctionData();
return $this->_junctionForeignKeys;
}
|
public string getJunctionTableName()
| ||
| {return} | string | junction table name. |
public function getJunctionTableName()
{
if ($this->_junctionTableName===null)
$this->initJunctionData();
return $this->_junctionTableName;
}
example
Here is an example of how to declare the relation in the model:
'tags'=>array(self::MANY_MANY, 'Tag', 'post_tag(post_id, tag_id)', 'order'=>'name'),Signup or Login in order to comment.