AdminController
扩展自 BaseControllerJoomla 管理员控制器的基类
控制器(控制器是您放置所有实际代码的地方)提供基本功能,例如渲染视图(即显示模板)。
自版本 |
1.6 |
---|---|
包 |
Joomla CMS |
方法
__construct
构造函数。
__construct(mixed||string|int config = [], \Joomla\CMS\MVC\Factory\MVCFactoryInterface factory = null, \Joomla\CMS\Application\CMSWebApplicationInterface app = null, \Joomla\Input\Input input = null) :
自版本 |
3.0 |
---|
参数
- config
array<string|int, mixed>
一个可选的配置设置关联数组。识别的键值包括 'name'、'default_task'、'model_path' 和 'view_path'(此列表并非旨在全面)。- factory
MVCFactoryInterface|null
工厂。- app
CMSWebApplicationInterface|null
分发器的应用程序- input
Input|null
请求的输入对象
响应
混合类型
addModelPath
按后进先出 (LIFO) 顺序添加到模型路径堆栈中。
addModelPath( path, prefix = '') :
自版本 |
3.0 |
---|---|
已弃用 |
4.3 将在 6.0 中删除 将在不替换的情况下删除。改为通过 MVCFactory 获取模型 |
参数
- path
混合类型
要添加的目录(字符串)或目录列表(数组)。- prefix
字符串
模型的前缀
响应
空值
addPath
添加到模板和资源的搜索路径。
addPath( type, path) :
自版本 |
3.0 |
---|
参数
- type
字符串
路径类型(例如 'model'、'view')。- path
混合类型
要搜索的目录字符串或流数组。
响应
静态
BaseController 对象以支持链接。
addViewPath
按后进先出 (LIFO) 顺序将一个或多个视图路径添加到控制器的堆栈中。
addViewPath( path) :
自版本 |
3.0 |
---|
参数
- path
混合类型
要添加的目录(字符串)或目录列表(数组)。
响应
静态
此对象以支持链接。
checkEditId
方法用于检查 ID 是否在编辑列表中。
checkEditId( context, id) :
自版本 |
3.0 |
---|
参数
- context
字符串
会话存储的上下文。- id
整数
要添加到编辑列表的记录的 ID。
响应
布尔值
如果 ID 在编辑列表中,则为 true。
checkin
一个或多个记录的签入。
checkin() :
自版本 |
1.6 |
---|
响应
布尔值
成功时为 true
checkToken
检查请求中是否存在表单令牌。
checkToken( method = 'post', redirect = true) :
与 HTMLHelper::_('form.token') 或 Session::getFormToken 结合使用。
自版本 |
3.7.0 |
---|---|
抛出 |
|
参见 | Session::checkToken() |
参数
- method
字符串
要查找令牌键的请求方法。- redirect
布尔值
是否在失败时隐式地将用户重定向到引用页面或仅返回 false。
响应
布尔值
如果找到且有效,则为 true,否则返回 false 或重定向到引用页面。
createFileName
创建资源的文件名。
createFileName( type, mixed||string|int parts = []) :
自版本 |
3.0 |
---|
参数
- type
字符串
要为其创建文件名的资源类型。- parts
array<string|int, mixed>
文件名信息的关联数组。可选。
响应
字符串
文件名。
createModel
方法用于加载并返回模型对象。
createModel( name, prefix = '', mixed||string|int config = []) : \Joomla\CMS\MVC\Model\BaseDatabaseModel|bool
自版本 |
3.0 |
---|
参数
- name
字符串
模型的名称。- prefix
字符串
可选模型前缀。- config
array<string|int, mixed>
模型的配置数组。可选。
响应
BaseDatabaseModel|bool
成功时为模型对象;否则在失败时为 false。
createView
方法用于加载并返回视图对象。此方法首先在当前模板目录中查找匹配项,如果未找到,则使用默认设置路径加载视图类文件。
createView( name, prefix = '', type = '', mixed||string|int config = []) : \Joomla\CMS\MVC\View\ViewInterface|null
请注意“name、prefix、type”参数的顺序,这与相关公共方法中使用的“name、type、prefix”顺序不同。
自版本 |
3.0 |
---|---|
抛出 |
|
参数
- name
字符串
视图的名称。- prefix
字符串
视图类名称的可选前缀。- type
字符串
视图的类型。- config
array<string|int, mixed>
视图的配置数组。可选。
响应
ViewInterface|null
成功时为视图对象;失败时为 null 或错误结果。
delete
删除项目。
delete() :
自版本 |
1.6 |
---|
响应
空值
display
基于 MVC 架构的典型视图方法
display( cachable = false, mixed||string|int urlparams = []) :
此函数提供为默认实现,在大多数情况下,您需要在自己的控制器中覆盖它。
自版本 |
3.0 |
---|---|
抛出 |
|
参数
- cachable
布尔值
如果为 true,则视图输出将被缓存- urlparams
array<string|int, mixed>
安全 URL 参数及其变量类型的数组。@see \Joomla\CMS\Filter\InputFilter::clean() 以获取有效值。
响应
静态
\JControllerLegacy 对象以支持链接。
execute
通过在派生类中触发方法来执行任务。
execute( task) :
自版本 |
3.0 |
---|---|
抛出 |
|
参数
- task
字符串
要执行的任务。如果找不到匹配的任务,则执行 '__default' 任务(如果已定义)。
响应
混合类型
被调用方法返回的值。
getDispatcher
获取事件分发器。
getDispatcher() : \Joomla\Event\DispatcherInterface
进行覆盖是为了保持与旧版组件的向后兼容性。TODO:在 6.0 中删除覆盖
自版本 |
4.4.0 |
---|---|
抛出 |
|
响应
DispatcherInterface
getInstance
方法用于获取单例控制器实例。
getInstance( prefix, mixed||string|int config = []) :
自版本 |
3.0 |
---|---|
已弃用 |
4.3 将在 6.0 中删除 改为通过 MVCFactory 获取控制器 示例:Factory::getApplication()->bootComponent($option)->getMVCFactory()->createController(...); |
抛出 |
|
参数
- prefix
字符串
控制器的前缀。- config
array<string|int, mixed>
一个可选的构造函数选项数组。
响应
静态
getLogger
获取日志记录器。
getLogger() : \Psr\Log\LoggerInterface
自版本 |
5.0.0 |
---|
响应
LoggerInterface
getModel
方法用于获取模型对象,并在需要时加载它。
getModel( name = '', prefix = '', mixed||string|int config = []) : \Joomla\CMS\MVC\Model\BaseDatabaseModel|bool
自版本 |
3.0 |
---|
参数
- name
字符串
模型名称。可选。- prefix
字符串
类前缀。可选。- config
array<string|int, mixed>
模型的配置数组。可选。
响应
BaseDatabaseModel|bool
成功时为模型对象;否则在失败时为 false。
getName
方法用于获取控制器名称
getName() :
分发器名称默认情况下使用类名进行解析,或者可以通过在类构造函数中传递 $config['name'] 来设置。
自版本 |
3.0 |
---|---|
抛出 |
|
响应
字符串
分发器的名称
getRedirectToListAppend
获取要附加到列表重定向的 URL 参数。
getRedirectToListAppend() :
自版本 |
4.0.0 |
---|
响应
字符串
要附加到重定向 URL 的参数。
getTask
获取正在执行或最近执行的最后一个任务。
getTask() :
自版本 |
3.0 |
---|
响应
字符串
正在执行或最近执行的任务。
getTasks
获取控制器中可用的任务。
getTasks() : mixed||string|int
自版本 |
3.0 |
---|
响应
array<string|int, mixed>
任务名称的数组[i]。
getView
方法用于获取对当前视图的引用,并在必要时加载它。
getView( name = '', type = '', prefix = '', mixed||string|int config = []) : \Joomla\CMS\MVC\View\ViewInterface
自版本 |
3.0 |
---|---|
抛出 |
|
参数
- name
字符串
视图名称。可选,默认为控制器名称。- type
字符串
视图类型。可选。- prefix
字符串
类前缀。可选。- config
array<string|int, mixed>
视图的配置数组。可选。
响应
ViewInterface
对视图的引用或错误。
holdEditId
方法用于将记录 ID 添加到编辑列表。
holdEditId( context, id) :
自版本 |
3.0 |
---|---|
抛出 |
|
参数
- context
字符串
会话存储的上下文。- id
整数
要添加到编辑列表的记录的 ID。
响应
空值
postDeleteHook
允许子控制器在项目被删除后访问模型数据的功能。
postDeleteHook(\Joomla\CMS\MVC\Model\BaseDatabaseModel model, int||string|int id = null) :
prepareViewModel
方法用于设置视图模型
prepareViewModel(\Joomla\CMS\MVC\View\ViewInterface view) :
此函数提供为默认实现,并且仅在视图中设置一个模型(与视图具有相同前缀/后缀的模型)。如果您想为视图设置多个模型,则需要在 DisplayController 控制器中覆盖它。
自版本 |
5.0.0 |
---|
参数
- view
ViewInterface
视图对象
响应
空值
publish
方法用于发布项目列表
publish() :
自版本 |
1.6 |
---|
响应
空值
redirect
重定向浏览器或在未设置重定向时返回 false。
redirect() :
自版本 |
3.0 |
---|---|
抛出 |
|
响应
布尔值
如果不存在重定向,则为 false。
registerDefaultTask
注册如果找不到映射要执行的默认任务。
registerDefaultTask( method) :
自版本 |
3.0 |
---|
参数
- method
字符串
如果找不到命名任务,则要在派生类中执行的方法的名称。
响应
静态
\JControllerLegacy 对象以支持链接。
registerTask
将任务注册(映射)到类中的方法。
registerTask( task, method) :
自版本 |
3.0 |
---|
参数
- task
字符串
任务。- method
string
派生类中执行此任务的方法名称。
响应
静态
\JControllerLegacy 对象以支持链接。
releaseEditId
方法用于检查 ID 是否在编辑列表中。
releaseEditId( context, id) :
自版本 |
3.0 |
---|---|
抛出 |
|
参数
- context
字符串
会话存储的上下文。- id
整数
要添加到编辑列表的记录的 ID。
响应
空值
reorder
更改一个或多个记录的顺序。
reorder() :
自版本 |
1.6 |
---|
响应
布尔值
成功时为 true
runTransition
根据项目ID运行转换的方法。
runTransition() :
自版本 |
4.0.0 |
---|
响应
bool
指示转换是否成功。
saveorder
保存提交的记录排序值的方法。
saveorder() :
自版本 |
1.6 |
---|
响应
布尔值
成功时为 true
saveOrderAjax
通过AJAX保存提交的记录排序值的方法。
saveOrderAjax() :
自版本 |
3.0 |
---|
响应
空值
setMessage
设置与重定向一起传递的内部消息
setMessage( text, type = 'message') :
自版本 |
3.0 |
---|
参数
- 文本
string
重定向时显示的消息。- type
string
消息类型。可选,默认为'message'。
响应
string
上一个消息
setPath
为资源设置一整个搜索路径数组。
setPath( type, path) :
自版本 |
3.0 |
---|
参数
- type
string
要设置的路径类型,通常为'view'或'model'。- path
string
新的搜索路径集。如果为null或false,则重置为仅当前目录。
响应
空值
setRedirect
设置浏览器重定向的URL。
setRedirect( url, msg = null, type = null) :
自版本 |
3.0 |
---|
参数
- url
string
重定向到的URL。- msg
string
重定向时显示的消息。可选,默认为控制器内部设置的值(如果有)。- type
string
消息类型。可选,默认为'message'或之前调用setMessage设置的类型。
响应
静态
此对象以支持链接。
unregisterTask
取消注册(取消映射)类中的任务。
unregisterTask( task) :
自版本 |
3.0 |
---|
参数
- task
字符串
任务。
响应
静态
此对象以支持链接。
属性
basePath
控制器的基本路径
自版本 |
3.0 |
---|
类型
string
default_view
显示方法的默认视图。
自版本 |
3.0 |
---|
类型
string
doTask
执行的映射任务。
自版本 |
3.0 |
---|
类型
string
message
重定向消息。
自版本 |
3.0 |
---|
类型
string
messageType
重定向消息类型。
自版本 |
3.0 |
---|
类型
string
methods
类方法数组
自版本 |
3.0 |
---|
类型
array<string|int, mixed>
name
控制器的名称
自版本 |
3.0 |
---|
类型
string
model_prefix
模型的前缀
自版本 |
3.0 |
---|
类型
string
paths
资源(视图)的搜索目录集。
自版本 |
3.0 |
---|
类型
array<string|int, mixed>
redirect
重定向的URL。
自版本 |
3.0 |
---|
类型
string
task
当前或最近执行的任务。
自版本 |
3.0 |
---|
类型
string
taskMap
要为给定任务调用的类方法数组。
自版本 |
3.0 |
---|
类型
array<string|int, mixed>
input
保存一个JInput对象,以便更容易访问输入变量。
自版本 |
3.0 |
---|
类型
输入
instance
实例容器。
自版本 |
3.0 |
---|
类型
静态
option
组件的URL选项。
自版本 |
1.6 |
---|
类型
string
text_prefix
与控制器消息一起使用的前缀。
自版本 |
1.6 |
---|
类型
string
view_list
URL视图列表变量。
自版本 |
1.6 |
---|
类型
string