CActiveFinder
Package | system.db.ar |
---|---|
Inheritance | class CActiveFinder » CComponent |
Since | 1.0 |
Version | $Id: CActiveFinder.php 2231 2010-06-25 21:05:21Z qiang.xue $ |
When used in eager loading, this class provides the same set of find methods as CActiveRecord.
Public Properties
Property | Type | Description | Defined By |
---|---|---|---|
baseLimited | boolean | whether the base model has limit or offset. | CActiveFinder |
joinAll | boolean | join all tables all at once. | CActiveFinder |
Public Methods
Method | Description | Defined By |
---|---|---|
__call() | Calls the named method which is not a class method. | CComponent |
__construct() | Constructor. | CActiveFinder |
__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 |
count() | This is the relational version of CActiveRecord::count(). | CActiveFinder |
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 |
find() | This is the relational version of CActiveRecord::find(). | CActiveFinder |
findAll() | This is the relational version of CActiveRecord::findAll(). | CActiveFinder |
findAllByAttributes() | This is the relational version of CActiveRecord::findAllByAttributes(). | CActiveFinder |
findAllByPk() | This is the relational version of CActiveRecord::findAllByPk(). | CActiveFinder |
findAllBySql() | This is the relational version of CActiveRecord::findAllBySql(). | CActiveFinder |
findByAttributes() | This is the relational version of CActiveRecord::findByAttributes(). | CActiveFinder |
findByPk() | This is the relational version of CActiveRecord::findByPk(). | CActiveFinder |
findBySql() | This is the relational version of CActiveRecord::findBySql(). | CActiveFinder |
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 |
lazyFind() | Finds the related objects for the specified active record. | CActiveFinder |
query() | Performs the relational query based on the given DB criteria. | CActiveFinder |
raiseEvent() | Raises an event. | CComponent |
together() | Uses the most aggressive join approach. | CActiveFinder |
Property Details
whether the base model has limit or offset. This property is internally used.
join all tables all at once. Defaults to false. This property is internally used.
Method Details
public void __construct(CActiveRecord $model, mixed $with)
| ||
$model | CActiveRecord | the model that initiates the active finding process |
$with | mixed | the relation names to be actively looked for |
Constructor. A join tree is built up based on the declared relationships between active record classes.
public void count($condition='', $params=array (
))
| ||
$condition | ||
$params |
This is the relational version of CActiveRecord::count().
public void find($condition='', $params=array (
))
| ||
$condition | ||
$params |
This is the relational version of CActiveRecord::find().
public void findAll($condition='', $params=array (
))
| ||
$condition | ||
$params |
This is the relational version of CActiveRecord::findAll().
public void findAllByAttributes($attributes, $condition='', $params=array (
))
| ||
$attributes | ||
$condition | ||
$params |
This is the relational version of CActiveRecord::findAllByAttributes().
public void findAllByPk($pk, $condition='', $params=array (
))
| ||
$pk | ||
$condition | ||
$params |
This is the relational version of CActiveRecord::findAllByPk().
public void findAllBySql($sql, $params=array (
))
| ||
$sql | ||
$params |
This is the relational version of CActiveRecord::findAllBySql().
public void findByAttributes($attributes, $condition='', $params=array (
))
| ||
$attributes | ||
$condition | ||
$params |
This is the relational version of CActiveRecord::findByAttributes().
public void findByPk($pk, $condition='', $params=array (
))
| ||
$pk | ||
$condition | ||
$params |
This is the relational version of CActiveRecord::findByPk().
public void findBySql($sql, $params=array (
))
| ||
$sql | ||
$params |
This is the relational version of CActiveRecord::findBySql().
public void lazyFind(CActiveRecord $baseRecord)
| ||
$baseRecord | CActiveRecord | the base record whose related objects are to be loaded |
Finds the related objects for the specified active record. This method is internally invoked by CActiveRecord to support lazy loading.
public mixed query(CDbCriteria $criteria, boolean $all=false)
| ||
$criteria | CDbCriteria | the DB criteria |
$all | boolean | whether to bring back all records |
{return} | mixed | the query result |
Performs the relational query based on the given DB criteria. Do not call this method. This method is used internally.
public CActiveFinder together()
| ||
{return} | CActiveFinder | the finder object |
Uses the most aggressive join approach. By calling this method, even if there is LIMIT/OFFSET option set for the primary table query, we will still use a single SQL statement. By default (without calling this method), the primary table will be queried by itself so that LIMIT/OFFSET can be correctly applied.