生成应用插件超链接
创建于 2022-05-27 /
1261
字体:
[默认]
[大]
[更大]
说明
开发应用插件,少不了直接访问应用插件指定的方法。访问应用插件分为:Init和控制器。
Init属于应用插件的核心模块,要访问此地址,需要拥有系统管理的权限。相反应用插件控制器的访问,则依据plugin.ini中设置可访问组限定。
Init的入口地址为: {group}-Application-Init 。如PT的后台所属组是Ticket。 那么他地址是:Ticket-Application-Init
控制器的入口地址为: {group}-Application-Plugin。您在应用插件的plugin.ini中,GROUP声明了用什么组。同时控制器位于哪一个组下的目录,那么他的{group}参数就是这个组名称。如:GROUP中声明了Ticket和Form。控制器存放在 \Plugin\Demo\Form。那么完整地址就是:Form-Application-Plugin。
除了入口地址不同,两者的参数是一样的:为n和f
参数名称 | 说明 |
---|---|
n | Demo-Init 或者Demo-Index 。说明访问Demo应用插件的Init.php或者Index.php |
f | 调用上述n中文件的方法。 |
访问Init方法
要访问Init中的方法,调用控制器中 url方法,生成对应的地址即可:
<?= $this->url('Ticket-Application-Init', ['n' =>'Demo-Init', 'f'=> 'saveSetting']) ?>
由于访问Init方法属于敏感操作,一般只有系统管理员才可以触及此地址,开发者应尽量避免调用此文件的方法。
访问控制器方法
访问控制器方法,我们提供了pluginUrl()方法。
pluginUrl
参数 | 属性 | 说明 | 示例 |
---|---|---|---|
$param | 必填,数组 | 要访问的应用名称和应用的文件。参数为n和f | ['n' =>'Demo-Index', 'f'=> 'test'] |
$group | 非必填 | 是否生成指定组的地址,默认为当前运行组 | |
$filterHtmlSuffix | 非必填 | 是否强制过滤HTML后缀 |
在控制器中这样调用:
<?php $this->pluginUrl(['n' => 'Demo-Index', 'f' => 'test']) ?>
在模板中这样调用:
<?= $label->pluginUrl(['n' => 'Demo-Index', 'f' => 'test']) ?>
0 人点赞过