FormModel
Extends \Joomla\CMS\MVC\Model\BaseDatabaseModelPrototype form model.
Acts as a Factory class for application specific objects and provides many supporting API functions.
see | \JForm \JFormField \JFormRule |
---|---|
since |
1.6 |
Methods
__construct
Constructor
__construct(array $config = array(), \Joomla\CMS\MVC\Factory\MVCFactoryInterface $factory = null)
since |
3.0 |
---|---|
throws |
|
Arguments
- $config
array
An array of configuration options (name, state, dbo, table_path, ignore_request).- $factory
\Joomla\CMS\MVC\Factory\MVCFactoryInterface
The factory.
_createFileName
Create the filename for a resource
_createFileName(string $type, array $parts = array()) : string
since |
3.0 |
---|
Arguments
- $type
string
The resource type to create the filename for.- $parts
array
An associative array of filename information.
Response
string
The filename
_createTable
Method to load and return a model object.
_createTable(string $name, string $prefix = 'Table', array $config = array()) : \JTable|boolean
since |
3.0 |
---|---|
see | \JTable::getInstance() |
Arguments
- $name
string
The name of the view- $prefix
string
The class prefix. Optional.- $config
array
Configuration settings to pass to \JTable::getInstance
Response
\JTable|boolean
Table object or boolean false if failed
_getList
Gets an array of objects from the results of database query.
_getList(string $query, integer $limitstart, integer $limit) : array<mixed,object>
since |
3.0 |
---|---|
throws |
|
Arguments
- $query
string
The query.- $limitstart
integer
Offset.- $limit
integer
The number of records.
Response
array<mixed,object>
An array of results.
_getListCount
Returns a record count for the query.
_getListCount(\JDatabaseQuery|string $query) : integer
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|string
The query.
Response
integer
Number 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
mixed
A path or array[sting] of paths to search.- $prefix
string
A prefix for models.
Response
array
An 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
mixed
The directory as a string or directories as an array to add.
checkin
Method to checkin a row.
checkin(integer $pk = null) : boolean
since |
1.6 |
---|
Arguments
- $pk
integer
The numeric id of the primary key.
Response
boolean
False on failure or error, true otherwise.
checkout
Method to check-out a row for editing.
checkout(integer $pk = null) : boolean
since |
1.6 |
---|
Arguments
- $pk
integer
The numeric id of the primary key.
Response
boolean
False on failure or error, true otherwise.
cleanCache
Clean the cache
cleanCache(string $group = null, integer $clientId) : void
since |
3.0 |
---|
Arguments
- $group
string
The cache group- $clientId
integer
The ID of the client
getDbo
Method to get the database driver object
getDbo() : \JDatabaseDriver
getForm
Abstract method for getting the form from the model.
getForm(array $data = array(), boolean $loadData = true) : \JForm|boolean
since |
1.6 |
---|
Arguments
- $data
array
Data for the form.- $loadData
boolean
True if the form is to load its own data (default case), false if not.
Response
\JForm|boolean
A \JForm object on success, false on failure
getInstance
Returns a Model object, always creating it
getInstance(string $type, string $prefix = '', array $config = array()) : \JModelLegacy|boolean
since |
3.0 |
---|
Arguments
- $type
string
The model type to instantiate- $prefix
string
Prefix for the model class name. Optional.- $config
array
Configuration array for model. Optional.
Response
\JModelLegacy|boolean
A \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
string
The name of the model
getState
Method to get model state variables
getState(string $property = null, mixed $default = null) : mixed
since |
3.0 |
---|
Arguments
- $property
string
Optional parameter name- $default
mixed
Optional default value
Response
mixed
The 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
string
The table name. Optional.- $prefix
string
The class prefix. Optional.- $options
array
Configuration array for model. Optional.
Response
\JTable
A \JTable object
loadForm
Method to get a form object.
loadForm(string $name, string $source = null, array $options = array(), boolean $clear = false, string $xpath = false) : \JForm|boolean
see | \JForm |
---|---|
since |
1.6 |
Arguments
- $name
string
The name of the form.- $source
string
The form source. Can be XML string if file flag is set to false.- $options
array
Optional array of options for the form creation.- $clear
boolean
Optional argument to force load a new form.- $xpath
string
An optional xpath to search for the fields.
Response
\JForm|boolean
\JForm object on success, false on error.
loadFormData
Method to get the data that should be injected in the form.
loadFormData() : array
since |
1.6 |
---|
Response
array
The default data is an empty array.
loadHistory
Method to load a row for editing from the version history table.
loadHistory(integer $versionId, \JTable &$table) : boolean
since |
3.2 |
---|
Arguments
- $versionId
integer
Key to the version history table.- $table
\JTable
Response
boolean
False 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 |
preprocessData
Method to allow derived classes to preprocess the data.
preprocessData(string $context, &$data, string $group = 'content') : void
since |
3.1 |
---|
Arguments
- $context
string
The context identifier.- $data
- $group
string
The name of the plugin group to import (defaults to "content").
preprocessForm
Method to allow derived classes to preprocess the form.
preprocessForm(\JForm $form, mixed $data, string $group = 'content') : void
see | \JFormField |
---|---|
since |
1.6 |
throws |
|
Arguments
- $form
\JForm
A \JForm object.- $data
mixed
The data expected for the form.- $group
string
The name of the plugin group to import (defaults to "content").
setDbo
Method to set the database driver object
setDbo(\JDatabaseDriver $db) : void
setState
Method to set model state variables
setState(string $property, mixed $value = null) : mixed
since |
3.0 |
---|
Arguments
- $property
string
The name of the property.- $value
mixed
The value of the property to set or null.
Response
mixed
The previous value of the property or null if not set.
validate
Method to validate the form data.
validate(\JForm $form, array $data, string $group = null) : array|boolean
see | \JFormRule \JFilterInput |
---|---|
since |
1.6 |
Arguments
- $form
\JForm
The form to validate against.- $data
array
The data to validate.- $group
string
The name of the field group to validate.
Response
array|boolean
Array of filtered data if valid, false otherwise.
Properties
_forms
Array of form objects.
since |
1.6 |
---|
Type(s)
array<mixed,\JForm>
events_map
Maps events to plugin groups.
since |
3.6 |
---|
Type(s)
array
__state_set
Indicates if the internal state has been set
since |
3.0 |
---|
Type(s)
boolean
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