AdminModel
扩展自 FormModel原型管理模型。
自版本 |
1.6 |
---|---|
包 |
Joomla 内容管理系统 |
方法
__construct
构造函数。
__construct(mixed||string|int config = [], \Joomla\CMS\MVC\Factory\MVCFactoryInterface factory = null, \Joomla\CMS\Form\FormFactoryInterface formFactory = null) :
自版本 |
1.6 |
---|---|
抛出 |
|
参数
- config
array<string|int, mixed>
配置选项数组(名称、状态、dbo、表路径、忽略请求)。- factory
MVCFactoryInterface|null
工厂。- formFactory
FormFactoryInterface|null
表单工厂。
返回值
混合类型
__get
_db 变量的代理。
__get( name) :
自版本 |
4.2.0 |
---|---|
已弃用 |
4.3 将在 6.0 中移除 使用 getDatabase() 而不是直接访问 _db |
参数
- name
string
元素的名称
返回值
mixed
如果已设置,则为元素的值,否则为 null
_createFileName
创建资源的文件名
_createFileName( type, mixed||string|int parts = []) :
自版本 |
3.0 |
---|---|
已弃用 |
4.3 将在 6.0 中移除 将在不替换的情况下移除 |
参数
- type
string
要为其创建文件名的资源类型。- parts
array<string|int, mixed>
文件名信息的关联数组。
返回值
string
文件名
_createTable
加载并返回表对象的方法。
_createTable( name, prefix = 'Table', mixed||string|int config = []) : \Joomla\CMS\Table\Table|bool
自版本 |
3.0 |
---|---|
参见 | Table::getInstance() |
参数
- name
string
视图的名称- prefix
string
类前缀。可选。- config
array<string|int, mixed>
传递给 Table::getInstance 的配置设置
返回值
Table|bool
表对象或布尔值 false(如果失败)
_getList
从数据库查询结果中获取对象数组。
_getList(\Joomla\Database\DatabaseQuery|string query, limitstart, limit) : object||string|int
自版本 |
3.0 |
---|---|
抛出 |
|
参数
- query
DatabaseQuery|string
查询。- limitstart
int
偏移量。- limit
int
记录数。
返回值
array<string|int, object>
结果数组。
_getListCount
返回查询的记录数。
_getListCount(\Joomla\Database\DatabaseQuery|string query) :
注意:此方法的当前实现假设 getListQuery() 返回一组唯一的行,因此它使用 SELECT COUNT(*) 来计算行数。在 getListQuery() 使用 DISTINCT 的情况下,则必须在派生模型类中通过自定义实现覆盖此方法,或者应使用 GROUP BY 子句使集合唯一。
自版本 |
3.0 |
---|
参数
- query
DatabaseQuery|string
查询。
返回值
int
查询的行数。
addIncludePath
添加 \JModelLegacy 应在其中搜索模型的目录。您可以传递字符串或目录数组。
addIncludePath( path = '', prefix = '') : mixed||string|int
addTablePath
按后进先出 (LIFO) 顺序将模型表路径添加到堆栈中。
addTablePath( path) :
自版本 |
3.0 |
---|---|
已弃用 |
4.3 将在 6.0 中移除 将在不替换的情况下移除。改为通过 MVCFactory 获取模型 |
参数
- path
mixed
要添加的字符串形式的目录或数组形式的目录。
返回值
void
batch
对项目或一组项目执行批量操作的方法。
batch(mixed||string|int commands, mixed||string|int pks, mixed||string|int contexts) :
自版本 |
1.7 |
---|
参数
- commands
array<string|int, mixed>
要执行的命令数组。- pks
array<string|int, mixed>
项目 ID 数组。- contexts
array<string|int, mixed>
项目上下文数组。
返回值
bool
成功时返回 true,失败时返回 false。
batchAccess
批量更改一组行的访问级别。
batchAccess( value, mixed||string|int pks, mixed||string|int contexts) :
自版本 |
1.7 |
---|
参数
- value
int
与资产组 ID 匹配的新值。- pks
array<string|int, mixed>
行 ID 数组。- contexts
array<string|int, mixed>
项目上下文数组。
返回值
bool
如果成功,则为 true,否则为 false,并设置内部错误。
batchCopy
将项目批量复制到新类别或当前类别。
batchCopy( value, mixed||string|int pks, mixed||string|int contexts) : array|bool
自版本 |
1.7 |
---|
参数
- value
int
新类别。- pks
array<string|int, mixed>
行 ID 数组。- contexts
array<string|int, mixed>
项目上下文数组。
返回值
array<string|int, mixed>|bool
成功时为新 ID 数组,失败时为布尔值 false。
batchLanguage
批量更改一组行的语言。
batchLanguage( value, mixed||string|int pks, mixed||string|int contexts) :
自版本 |
2.5 |
---|
参数
- value
string
与语言匹配的新值。- pks
array<string|int, mixed>
行 ID 数组。- contexts
array<string|int, mixed>
项目上下文数组。
返回值
bool
如果成功,则为 true,否则为 false,并设置内部错误。
batchMove
将项目批量移动到新类别
batchMove( value, mixed||string|int pks, mixed||string|int contexts) :
自版本 |
1.7 |
---|
参数
- value
int
新类别 ID。- pks
array<string|int, mixed>
行 ID 数组。- contexts
array<string|int, mixed>
项目上下文数组。
返回值
bool
如果成功,则为 true,否则为 false,并设置内部错误。
batchTag
批量标记项目列表。
batchTag( value, mixed||string|int pks, mixed||string|int contexts) :
自版本 |
3.1 |
---|
参数
- value
int
新标签的值。- pks
array<string|int, mixed>
行 ID 数组。- contexts
array<string|int, mixed>
项目上下文数组。
返回值
bool
如果成功,则为 true,否则为 false,并设置内部错误。
bootComponent
使用给定名称引导组件。
bootComponent( component) : \Joomla\CMS\Extension\ComponentInterface
canDelete
测试是否可以删除记录的方法。
canDelete( record) :
自版本 |
1.6 |
---|
参数
- record
object
记录对象。
返回值
bool
如果允许删除记录,则为 true。默认为组件的权限。
canEditState
测试是否可以更改记录状态的方法。
canEditState( record) :
自版本 |
1.6 |
---|
参数
- record
object
记录对象。
返回值
bool
如果允许更改记录的状态,则为 true。默认为组件的权限。
checkCategoryId
检查批量复制和移动的类别 ID 有效性的方法
checkCategoryId( categoryId) :
自版本 |
3.2 |
---|
参数
- categoryId
int
要检查的类别 ID
返回值
bool
checkin
覆盖方法以检入记录或记录数组
checkin( pks = []) : int|bool
自版本 |
1.6 |
---|
参数
- pks
mixed
主键 ID 或 ID 数组
返回值
int|bool
如果发生错误,则为布尔值 false,否则为检入的记录数。
checkout
覆盖方法以检出记录。
checkout( pk = null) :
自版本 |
1.6 |
---|
参数
- pk
int
主键 ID。
返回值
bool
如果成功,则为 true,如果发生错误,则为 false。
cleanCache
清除缓存
cleanCache( group = null) :
自版本 |
3.0 |
---|
参数
- group
string
缓存组
返回值
void
cleanupPostBatchCopy
可以在批量复制数据后执行任何数据清理的功能
cleanupPostBatchCopy(\Joomla\CMS\Table\TableInterface table, newId, oldId) :
createModelFromComponent
通过从前缀加载组件来返回模型对象。
createModelFromComponent( type, prefix = '', mixed||string|int config = []) : \Joomla\CMS\MVC\Model\ModelInterface|null
自版本 |
4.0.0 |
---|---|
已弃用 |
4.3 将在 6.0 中移除 将在不替换的情况下移除 |
参数
- type
string
要实例化的模型类型- prefix
string
模型类名称的前缀。可选。- config
array<string|int, mixed>
模型的配置数组。可选。
返回值
ModelInterface|null
ModelInterface 实例或 null(如果失败)
def
如果尚未分配,则设置默认值
def( property, default = null) :
自版本 |
1.7.0 |
---|---|
已弃用 |
4.3.0 将在 6.0 中移除 不应再使用定义动态属性 |
参数
- property
string
属性的名称。- default
mixed
默认值。
返回值
混合类型
delete
删除一条或多条记录的方法。
delete(mixed||string|int &pks) :
自版本 |
1.6 |
---|
参数
- pks
array<string|int, mixed>
记录主键数组。
返回值
bool
如果成功,则为 true,如果发生错误,则为 false。
dispatchEvent
在内部调度程序上分派给定的事件,并回退到全局调度程序。
dispatchEvent(\Joomla\Event\EventInterface event) :
自版本 |
4.1.0 |
---|---|
已弃用 |
4.4 将在 6.0 中移除。直接使用 $this->getDispatcher()。 |
参数
- event
EventInterface
事件
返回值
void
editAssociations
加载 com_associations 中项目的方法。
editAssociations(mixed||string|int data) :
自版本 |
3.9.0 |
---|---|
已弃用 |
4.3 将在 6.0 中移除 现在由常规保存方法处理。 |
参数
- data
array<string|int, mixed>
表单数据。
返回值
bool
如果成功,则为 true,否则为 false。
generateNewTitle
更改标题和别名的方法。
generateNewTitle( categoryId, alias, title) : mixed||string|int
自版本 |
1.7 |
---|
参数
- categoryId
int
类别的 ID。- alias
string
别名。- title
string
标题。
返回值
array<string|int, mixed>
包含修改后的标题和别名。
generateTitle
一种预处理生成新标题的方法,以允许别名和标题名称不同的表使用批量移动和复制方法
generateTitle( categoryId, \Joomla\CMS\Table\Table table) :
get
返回对象的属性或未设置属性时的默认值。
get( property, default = null) :
自版本 |
1.7.0 |
---|---|
参见 | CMSObject::getProperties() |
已弃用 |
4.3.0 将在 6.0 中移除 为属性创建适当的 getter 函数 |
参数
- property
string
属性的名称。- default
mixed
默认值。
返回值
mixed
属性的值。
getCacheControllerFactory
获取 CacheControllerFactoryInterface。
getCacheControllerFactory() : \Joomla\CMS\Cache\CacheControllerFactoryInterface
getCurrentUser
返回当前用户,如果未设置则返回全局应用程序的身份。这将在 6.0 中更改,并将返回空用户。
getCurrentUser() : \Joomla\CMS\User\User
getDbo
获取数据库驱动程序。
getDbo() : \Joomla\Database\DatabaseInterface
自版本 |
4.2.0 |
---|---|
抛出 |
|
已弃用 |
4.3 将在 6.0 中移除 使用 getDatabase() 代替 示例:$model->getDatabase(); |
返回值
DatabaseInterface
数据库驱动程序。
getDispatcher
获取事件调度器。
getDispatcher() : \Joomla\Event\DispatcherInterface
进行覆盖是为了保持与旧版组件的向后兼容性。TODO:在 6.0 中移除覆盖。
自版本 |
4.4.0 |
---|---|
抛出 |
|
返回值
DispatcherInterface
getError
获取最新的错误消息。
getError( i = null, toString = true) :
自版本 |
1.7.0 |
---|---|
已弃用 |
3.1.4 将在 6.0 中移除 将被移除且没有替换,改为捕获抛出的异常而不是使用 getError。 |
参数
- i
int
选项错误索引。- toString
bool
指示 Exception 对象是否应返回其错误消息。
返回值
string
错误消息
getErrors
返回所有错误(如果有)。
getErrors() : mixed||string|int
自版本 |
1.7.0 |
---|---|
已弃用 |
3.1.4 将在 6.0 中移除 将被移除且没有替换,改为捕获抛出的异常而不是使用 getErrors。 |
返回值
array<string|int, mixed>
错误消息数组。
getFormFactory
获取 FormFactoryInterface。
getFormFactory() : \Joomla\CMS\Form\FormFactoryInterface
getInstance
返回一个 Model 对象,始终创建它。
getInstance( type, prefix = '', mixed||string|int config = []) : self|bool
自版本 |
3.0 |
---|---|
已弃用 |
4.3 将在 6.0 中移除 将被移除且没有替换。通过 MVCFactory 获取模型,例如:Factory::getApplication->bootComponent('com_xxx')->getMVCFactory()->createModel($type, $prefix, $config); |
参数
- type
string
要实例化的模型类型- prefix
string
模型类名称的前缀。可选。- config
array<string|int, mixed>
模型的配置数组。可选。
返回值
self|bool
\JModelLegacy 实例或失败时的 false。
getItem
获取单个记录的方法。
getItem( pk = null) : \stdClass|false
自版本 |
1.6 |
---|
参数
- pk
int
主键的 ID。
返回值
stdClass|false
成功时的对象,失败时的 false。
getMVCFactory
返回 MVC 工厂。
getMVCFactory() : \Joomla\CMS\MVC\Factory\MVCFactoryInterface
getName
获取模型名称的方法。
getName() :
模型名称。默认情况下使用类名解析,也可以通过在类构造函数中传递 $config['name'] 来设置。
自版本 |
4.0.0 |
---|---|
抛出 |
|
返回值
string
模型的名称。
getProperties
返回对象属性的关联数组。
getProperties( public = true) : mixed||string|int
自版本 |
1.7.0 |
---|---|
参见 | CMSObject::get() |
已弃用 |
4.3.0 将在 6.0 中移除 为属性创建适当的 getter 函数 |
参数
- 公有的
bool
如果为 true,则仅返回公有属性。
返回值
array<string|int, mixed>
getReorderConditions
获取一组排序条件的受保护方法。
getReorderConditions(\Joomla\CMS\Table\Table table) : string||string|int
getState
获取状态变量的方法。
getState( property = null, default = null) :
自版本 |
4.0.0 |
---|
参数
- property
string
可选的参数名称。- default
mixed
可选的默认值。
返回值
mixed
指定时的属性,省略时的状态对象。
getTable
获取表对象的方法,如有必要则加载它。
getTable( name = '', prefix = '', mixed||string|int options = []) : \Joomla\CMS\Table\Table
自版本 |
3.0 |
---|---|
抛出 |
|
参数
- name
string
表名。可选。- prefix
string
类前缀。可选。- 选项
array<string|int, mixed>
模型的配置数组。可选。
返回值
Table
一个 Table 对象。
initBatch
初始化批处理方法和其他方法(如 saveorder())使用的成员变量的方法。
initBatch() :
自版本 |
3.8.2 |
---|
返回值
void
isCheckedOut
检查给定记录是否由当前用户签出的方法。
isCheckedOut(\stdClass item) :
参数
- 项目
stdClass
要检查的记录。
返回值
bool
loadForm
获取表单对象的方法。
loadForm( name, source = null, mixed||string|int options = [], clear = false, xpath = null) : \Joomla\CMS\Form\Form
loadFormData
获取应注入表单的数据的方法。
loadFormData() : mixed||string|int
自版本 |
4.0.0 |
---|
返回值
array<string|int, mixed>
默认数据为空数组。
populateState
自动填充模型状态的常用方法。
populateState() :
自版本 |
1.6 |
---|
返回值
void
prepareTable
在保存之前准备和清理表数据。
prepareTable(\Joomla\CMS\Table\Table table) :
preprocessData
允许派生类预处理数据的方法。
preprocessData( context, &data, group = 'content') :
自版本 |
4.0.0 |
---|
参数
- 上下文
string
上下文标识符。- data
mixed
要处理的数据。它会被直接更改。- group
string
要导入的插件组的名称(默认为“content”)。
返回值
void
preprocessForm
允许派生类预处理表单的方法。
preprocessForm(\Joomla\CMS\Form\Form form, data, group = 'content') :
publish
更改一个或多个记录的发布状态的方法。
publish(mixed||string|int &pks, value = 1) :
自版本 |
1.6 |
---|
参数
- pks
array<string|int, mixed>
要更改的主键列表。- value
int
发布状态的值。
返回值
bool
成功时的 true。
redirectToAssociations
加载 com_associations 中项目的方法。
redirectToAssociations(mixed||string|int data) :
抛出 |
|
---|---|
自版本 |
3.9.17 |
参数
- data
array<string|int, mixed>
表单数据。
返回值
bool
如果成功,则为 true,否则为 false。
reorder
调整行排序的方法。
reorder( pks, delta) : bool|null
如果用户对任何选定的主键没有编辑权限,则返回 NULL。
自版本 |
1.6 |
---|
参数
- pks
int
要移动的主键的 ID。- 增量
int
增量,通常为 +1 或 -1。
返回值
bool|null
失败或错误时的 false,成功时的 true,如果 $pk 为空(未选择任何项目)则为 null。
save
保存表单数据的方法。
save(mixed||string|int data) :
自版本 |
1.6 |
---|
参数
- data
array<string|int, mixed>
表单数据。
返回值
bool
成功时的 true,错误时的 false。
saveorder
保存手动设置的记录顺序。
saveorder(mixed||string|int pks = [], order = null) :
自版本 |
1.6 |
---|
参数
- pks
array<string|int, mixed>
主键 ID 数组。- 顺序
int
+1 或 -1。
返回值
bool
成功时的布尔值 true,失败时的 false。
set
修改对象的属性,如果属性不存在则创建它。
set( property, value = null) :
自版本 |
1.7.0 |
---|---|
已弃用 |
4.3.0 将在 6.0 中移除 为属性创建一个合适的 setter 函数。 |
参数
- property
string
属性的名称。- value
mixed
要设置的属性的值。
返回值
mixed
属性的先前值。
setCacheControllerFactory
设置要使用的缓存控制器工厂。
setCacheControllerFactory(\Joomla\CMS\Cache\CacheControllerFactoryInterface cacheControllerFactory = null) :
setCurrentUser
设置当前用户。
setCurrentUser(\Joomla\CMS\User\User currentUser) :
setDbo
设置数据库驱动程序。
setDbo(\Joomla\Database\DatabaseInterface db = null) :
自版本 |
4.2.0 |
---|---|
已弃用 |
4.3 将在 6.0 中移除 使用 setDatabase() 代替 示例:$model->setDatabase($db); |
参数
- db
DatabaseInterface|null
数据库驱动程序。
返回值
void
setError
添加错误消息。
setError( error) :
自版本 |
1.7.0 |
---|---|
已弃用 |
3.1.4 将在 6.0 中移除 将被移除且没有替换,改为抛出异常而不是使用 setError。 |
参数
- 错误
string
错误消息。
返回值
void
setFormFactory
设置要使用的表单工厂。
setFormFactory(\Joomla\CMS\Form\FormFactoryInterface formFactory = null) :
setMVCFactory
设置 MVC 工厂。
setMVCFactory(\Joomla\CMS\MVC\Factory\MVCFactoryInterface mvcFactory) :
setProperties
根据命名数组/哈希设置对象属性。
setProperties( properties) :
自版本 |
1.7.0 |
---|---|
参见 | CMSObject::set() |
已弃用 |
4.3.0 将在 6.0 中移除 为属性创建一个合适的 setter 函数。 |
参数
- 属性
mixed
关联数组或其他对象。
返回值
bool
setState
设置状态变量的方法。
setState( property, value = null) :
自版本 |
4.0.0 |
---|
参数
- property
string
属性的名称。- value
mixed
要设置的属性的值或 null。
返回值
mixed
属性的先前值,如果未设置则为 null。
validate
验证表单数据的方法。
validate(\Joomla\CMS\Form\Form form, mixed||string|int data, group = null) : array|bool
参见 | FormRule InputFilter |
---|---|
自版本 |
1.6 |
参数
- 表单
Form
要验证的表单。- data
array<string|int, mixed>
要验证的数据。- group
string
要验证的字段组的名称。
返回值
array<string|int, mixed>|bool
如果有效则为过滤后的数据数组,否则为 false。
属性
_errors
错误消息或 Exception 对象数组。
自版本 |
1.7.0 |
---|---|
已弃用 |
3.1.4 JError 已弃用。 |
类型
array<string|int, mixed>
__state_set
指示内部状态是否已设置。
自版本 |
4.0.0 |
---|
类型
bool
name
模型(基本)名称。
自版本 |
4.0.0 |
---|
类型
字符串
路径
包含路径。
自版本 |
4.0.0 |
---|
类型
array<string|int, mixed>
cacheControllerFactory
CacheControllerFactoryInterface
选项
组件的 URL 选项。
自版本 |
3.0 |
---|
类型
字符串
event_clean_cache
清除缓存时触发的事件。
自版本 |
3.0 |
---|
类型
字符串
events_map
将事件映射到插件组。
自版本 |
3.6 |
---|
类型
array<string|int, mixed>
typeAlias
此内容类型的类型别名(例如,“com_content.article”)。
自版本 |
3.8.6 |
---|
类型
字符串
text_prefix
与控制器消息一起使用的前缀。
自版本 |
1.6 |
---|
类型
字符串
event_after_delete
删除数据后触发的事件。
自版本 |
1.6 |
---|
类型
字符串
event_after_save
保存数据后触发的事件。
自版本 |
1.6 |
---|
类型
字符串
event_before_delete
删除数据前触发的事件。
自版本 |
1.6 |
---|
类型
字符串
event_before_save
保存数据前触发的事件。
自版本 |
1.6 |
---|
类型
字符串
event_before_change_state
更改数据发布状态前触发的事件。
自版本 |
4.0.0 |
---|
类型
字符串
event_change_state
更改数据发布状态后触发的事件。
自版本 |
1.6 |
---|
类型
字符串
event_before_batch
批处理前触发的事件。
自版本 |
4.0.0 |
---|
类型
字符串
batch_copymove
批处理复制/移动命令。如果设置为 false,则不支持批处理复制/移动命令。
自版本 |
3.4 |
---|
类型
字符串
batch_commands
允许的批处理命令。
自版本 |
3.4 |
---|
类型
array<string|int, mixed>
associationsContext
关联表使用的上下文。
自版本 |
3.4.4 |
---|
类型
字符串
batchSet
一个标志,指示批处理操作(和 saveorder)的成员变量是否已初始化。
自版本 |
3.8.2 |
---|
类型
bool|null
用户
执行操作的用户(在批处理方法和 saveorder() 中可重用,通过 initBatch() 初始化)。
自版本 |
3.8.2 |
---|
类型
对象
table
一个 \Joomla\CMS\Table\Table 实例(适当的类型),用于管理数据库记录(在批处理方法和 saveorder() 中可重用,通过 initBatch() 初始化)。
tableClassName
管理数据库记录的 \Joomla\CMS\Table\Table 实例的类名(在批处理方法和 saveorder() 中可重用,通过 initBatch() 初始化)。
自版本 |
3.8.2 |
---|
类型
字符串
contentType
对应于当前模型类的 UCM 类型(在批处理操作方法中可重用,通过 initBatch() 初始化)。
自版本 |
3.8.2 |
---|
类型
对象
type
对应于当前模型类的 UCM 类型的数据库数据(在批处理操作方法中可重用,通过 initBatch() 初始化)。
自版本 |
3.8.2 |
---|
类型
对象