|
Previous Class |
Solar_Sql_Model_Related |
Next Page |
Solar_Sql_Model_Related
Abstract class to represent the characteristics of a related model.
Package
This class is part of the Array package.
Inheritance:
- Solar_Base
- Solar_Sql_Model_Related
Configuration Keys
wherein_max: The default value for the 'wherein_max' setting.
Constants
None.
Public Properties
These are all the public properties in the Solar_Sql_Model_Related class.
You can also view the list of all public, protected, and private properties.
$cols- Fetch these columns for the related records.
$conditions- Additional conditions when fetching related records.
$foreign_alias- Aliases the foreign table to this name.
$foreign_class- The class name of the foreign model.
$foreign_col- The name of the column to join with in the foreign table.
$foreign_key- The virtual element called
foreign_keyautomatically populates thenative_colorforeign_colvalue for you, based on the association type. $foreign_name- The virtual element called
foreign_nameautomatically sets theforeign_classby looking up the foreign_name in the model catalog. $foreign_primary_col- The name of the foreign primary column.
$foreign_table- The name of the table for the foreign model.
$merge- Indicates the strategy to use for merging joined rows; 'server' means the database will do it via a single SELECT combined into the native fetch, whereas 'client' means PHP will do it, using one additional SELECT for the relationship.
$name- The name of the relationship as defined by the original (native) model.
$native_alias- The alias for the native table.
$native_by- What strategy should be used for connecting to native records when eager-fetching: 'wherein', meaning a "WHERE IN (...)" a list of native IDs, or 'select', meaning a join against a sub-SELECT.
$native_class- The class of the native model.
$native_col- The native column to match against the foreign primary column.
$order- Additional ORDER clauses when fetching related records.
$type- The type of the relationship as defined by the original (native) model; e.g., 'has_one', 'belongs_to', 'has_many'.
$wherein_max- When picking a native-by strategy, use 'wherein' for up to this many record in the native result; after this point, use a 'select' strategy.
Public Methods
These are all the public methods in the Solar_Sql_Model_Related class.
You can also view the list of all public, protected, and private methods.
__construct()- Constructor.
__destruct()- Default destructor; does nothing other than provide a safe fallback for calls to parent::__destruct().
dump()- Convenience method for getting a dump the whole object, or one of its properties, or an external variable.
fetch()- Fetches the related record or collection for a native ID or record.
fetchEmpty()- Returns a new empty value appropriate for a lazy- or eager-fetch; this is different for each kind of related.
fetchNew()- Fetches a new record or collection object.
getForeignConditions()- Gets the foreign-model WHERE conditions and merges with the WHERE conditions on this relationship.
getModel()- Returns the related (foreign) model instance.
isInvalid()- Is the related record or collection valid?
isMany()- Is this related to many records?
isOne()- Is this related to one record?
load()- Loads this relationship object with user-defined characteristics (options), and corrects them as needed.
locale()- Looks up class-specific locale strings based on a key.
modEagerFetch()- Fixes the native fetch params and eager params; then, if the join_flag is set on the eager, calles _modEagerFetch() to modify the native fetch params based on the eager params.
modEagerResult()- Modifies the parent result array to add eager records.
newObject()- Packages foreign data as a record or collection object.
preSave()- Pre-save hook for saving related records or collections from a native record.
save()- Saves a related record or collection from a native record.
setNativeModel()- Sets the native (origin) model instance.
toArray()- Returns the relation characteristics as an array.
Local
- Overview
- Config
- Constants
- Properties
- Methods
- __construct()
- __destruct()
- _buildConfig()
- _collate()
- _exception()
- _fetchIntoArrayAll()
- _fetchIntoArrayOne()
- _fixEagerParams()
- _fixFetchParams()
- _fixForeignKey()
- _fixRelatedCol()
- _getEmpty()
- _getNativeBySelect()
- _getNativeByWherein()
- _modEagerFetch()
- _postConfig()
- _postConstruct()
- _preConfig()
- _setCols()
- _setConditions()
- _setForeignClass()
- _setForeignModel()
- _setMerge()
- _setNativeBy()
- _setOrder()
- _setRelated()
- _setType()
- _setWhereinMax()
- dump()
- fetch()
- fetchEmpty()
- fetchNew()
- getForeignConditions()
- getModel()
- isInvalid()
- isMany()
- isOne()
- load()
- locale()
- modEagerFetch()
- modEagerResult()
- newObject()
- preSave()
- save()
- setNativeModel()
- toArray()