AdminController

扩展自 BaseController

Joomla 管理员控制器的基类

控制器(控制器是您放置所有实际代码的地方)提供基本功能,例如渲染视图(即显示模板)。

自版本

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

抛出

UnexpectedValueException如果未设置分发器,则可能会抛出此异常。

响应

DispatcherInterface

getInstance

方法用于获取单例控制器实例。

getInstance( prefix, mixed||string|int config = []) : 
继承 静态 已弃用
自版本

3.0

已弃用

4.3 将在 6.0 中删除 改为通过 MVCFactory 获取控制器 示例:Factory::getApplication()->bootComponent($option)->getMVCFactory()->createController(...);

抛出

Exception如果无法加载控制器。

参数

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) : 
自版本

3.1

参数

model

BaseDatabaseModel数据模型对象。

id

array<string|int, int>已删除 ID 的数组。

响应

空值

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

类型

输入

factory

工厂。

继承
自版本

3.10.0

类型

MVCFactoryInterface

instance

实例容器。

继承 静态
自版本

3.0

类型

静态

views

包含视图的实例容器。

继承 静态
自版本

3.4

类型

array<string|int, ViewInterface>

app

应用程序。重新声明以显示此类需要 Web 应用程序。

自版本

5.0.0

类型

CMSWebApplicationInterface

option

组件的URL选项。

自版本

1.6

类型

string

text_prefix

与控制器消息一起使用的前缀。

自版本

1.6

类型

string

view_list

URL视图列表变量。

自版本

1.6

类型

string