BaseDatabaseModel
Extends JObjectBase class for a database aware Joomla Model
Acts as a Factory class for application specific objects and provides many supporting API functions.
| since |
2.5.5 |
|---|---|
| package |
Joomla CMS |
Methods
__construct
Constructor
__construct(array config = array(), \Joomla\CMS\MVC\Factory\MVCFactoryInterface factory = null) : mixed
| since |
3.0 |
|---|---|
| throws |
|
Arguments
- config
arrayAn array of configuration options (name, state, dbo, table_path, ignore_request).- factory
\Joomla\CMS\MVC\Factory\MVCFactoryInterfaceThe factory.
Response
mixed
_createFileName
Create the filename for a resource
_createFileName(string type, array parts = array()) : string
| since |
3.0 |
|---|
Arguments
- type
stringThe resource type to create the filename for.- parts
arrayAn associative array of filename information.
Response
stringThe filename
_createTable
Method to load and return a model object.
_createTable(string name, string prefix = 'Table', array config = array()) : \JTable|bool
| since |
3.0 |
|---|---|
| see | JTable::getInstance() |
Arguments
- name
stringThe name of the view- prefix
stringThe class prefix. Optional.- config
arrayConfiguration settings to pass to \JTable::getInstance
Response
\JTable|boolTable object or boolean false if failed
_getList
Gets an array of objects from the results of database query.
_getList(string query, int limitstart, int limit) : object[]
| since |
3.0 |
|---|---|
| throws |
|
Arguments
- query
stringThe query.- limitstart
intOffset.- limit
intThe number of records.
Response
object[]An array of results.
_getListCount
Returns a record count for the query.
_getListCount(\JDatabaseQuery|string query) : int
Note: Current implementation of this method assumes that getListQuery() returns a set of unique rows, thus it uses SELECT COUNT(*) to count the rows. In cases that getListQuery() uses DISTINCT then either this method must be overridden by a custom implementation at the derived Model Class or a GROUP BY clause should be used to make the set unique.
| since |
3.0 |
|---|
Arguments
- query
\JDatabaseQuery|stringThe query.
Response
intNumber of rows for query.
addIncludePath
Add a directory where \JModelLegacy should search for models. You may either pass a string or an array of directories.
addIncludePath(mixed path = '', string prefix = '') : array
| since |
3.0 |
|---|
Arguments
- path
mixedA path or array[sting] of paths to search.- prefix
stringA prefix for models.
Response
arrayAn array with directory elements. If prefix is equal to '', all directories are returned.
addTablePath
Adds to the stack of model table paths in LIFO order.
addTablePath(mixed path) : void
| since |
3.0 |
|---|
Arguments
- path
mixedThe directory as a string or directories as an array to add.
cleanCache
Clean the cache
cleanCache(string group = null, int clientId) : void
| since |
3.0 |
|---|
Arguments
- group
stringThe cache group- clientId
intThe ID of the client
getDbo
Method to get the database driver object
getDbo() : \JDatabaseDriver
| since |
3.0 |
|---|
Response
\JDatabaseDriver
getInstance
Returns a Model object, always creating it
getInstance(string type, string prefix = '', array config = array()) : \JModelLegacy|bool
| since |
3.0 |
|---|
Arguments
- type
stringThe model type to instantiate- prefix
stringPrefix for the model class name. Optional.- config
arrayConfiguration array for model. Optional.
Response
\JModelLegacy|boolA \JModelLegacy instance or false on failure
getName
Method to get the model name
getName() : string
The model name. By default parsed using the classname or it can be set by passing a $config['name'] in the class constructor
| since |
3.0 |
|---|---|
| throws |
|
Response
stringThe name of the model
getState
Method to get model state variables
getState(string property = null, mixed default = null) : mixed
| since |
3.0 |
|---|
Arguments
- property
stringOptional parameter name- default
mixedOptional default value
Response
mixedThe property where specified, the state object where omitted
getTable
Method to get a table object, load it if necessary.
getTable(string name = '', string prefix = 'Table', array options = array()) : \JTable
| since |
3.0 |
|---|---|
| throws |
|
Arguments
- name
stringThe table name. Optional.- prefix
stringThe class prefix. Optional.- options
arrayConfiguration array for model. Optional.
Response
\JTableA \JTable object
loadHistory
Method to load a row for editing from the version history table.
loadHistory(int versionId, \JTable &table) : bool
| since |
3.2 |
|---|
Arguments
- versionId
intKey to the version history table.- table
\JTableContent table object being loaded.
Response
boolFalse on failure or error, true otherwise.
populateState
Method to auto-populate the model state.
populateState() : void
This method should only be called once per instantiation and is designed to be called on the first call to the getState() method unless the model configuration flag to ignore the request is set.
| note |
Calling getState in this method will result in recursion. |
|---|---|
| since |
3.0 |
setDbo
Method to set the database driver object
setDbo(\JDatabaseDriver db) : void
| since |
3.0 |
|---|
Arguments
- db
\JDatabaseDriverA \JDatabaseDriver based object
setState
Method to set model state variables
setState(string property, mixed value = null) : mixed
| since |
3.0 |
|---|
Arguments
- property
stringThe name of the property.- value
mixedThe value of the property to set or null.
Response
mixedThe previous value of the property or null if not set.
Properties
__state_set
Indicates if the internal state has been set
| since |
3.0 |
|---|
Type(s)
bool
_db
Database Connector
| since |
3.0 |
|---|
Type(s)
\JDatabaseDriver
name
The model (base) name
| since |
3.0 |
|---|
Type(s)
string
option
The URL option for the component.
| since |
3.0 |
|---|
Type(s)
string
state
A state object
| since |
3.0 |
|---|
Type(s)
\JObject
event_clean_cache
The event to trigger when cleaning cache.
| since |
3.0 |
|---|
Type(s)
string
factory
The factory.
| since |
3.10.0 |
|---|---|
| deprecated |
4.0 This is a temporary property that will be moved into a trait in Joomla 4 |
Type(s)
\Joomla\CMS\MVC\Factory\MVCFactoryInterface