| Package | system.db.ar |
|---|---|
| Inheritance | class CHasManyRelation » CActiveRelation » CBaseActiveRelation » CComponent |
| Subclasses | CManyManyRelation |
| 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 |
| 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 |
| 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 |
the name of the column that should be used as the key for storing related objects. Defaults to null, meaning using zero-based integer IDs.
limit of the rows to be selected. It is effective only for lazy loading this related object. Defaults to -1, meaning no limit.
offset of the rows to be selected. It is effective only for lazy loading this related object. Defaults to -1, meaning no offset.
|
public void mergeWith(array $criteria, boolean $fromScope=false)
| ||
| $criteria | array | the dynamically specified criteria |
| $fromScope | boolean | whether the criteria to be merged is from scopes |
public function mergeWith($criteria,$fromScope=false)
{
if($criteria instanceof CDbCriteria)
$criteria=$criteria->toArray();
parent::mergeWith($criteria,$fromScope);
if(isset($criteria['limit']) && $criteria['limit']>0)
$this->limit=$criteria['limit'];
if(isset($criteria['offset']) && $criteria['offset']>=0)
$this->offset=$criteria['offset'];
if(isset($criteria['index']))
$this->index=$criteria['index'];
}
Merges this relation with a criteria specified dynamically.
Signup or Login in order to comment.