zoukankan      html  css  js  c++  java
  • 教你如何写一个 Yii2 扩展

    前言

    把一系列相关联的功能使用模块开发,好处多多,维护起来很方便,模块还可以单独发布出去,让下一个项目之间使用,真是方便。

    下面我就写一个开发扩展的简单教程。

    Gii

    gii 自带帮助我们生成一个基本的扩展文件结构,地址如下: www.xxx.com/gii/extension

    先预览一下,成功之后可以点击生成按钮。

    然后页面会提示你如何操作。他让我们上传到 GitHub 上去,再开发、使用。但是一般我们一个扩展刚生成,还没写功能,上传到 GitHub 再开发,太麻烦了。

    下面我来谈谈我是怎么使用的。

    使用

    先在配置文件添加一个别名,代码如下:

    <?php
    return [
    
        'components' => [
        ],
        'aliases' => [
            '@yiier/rbac' => '@backend/runtime/tmp-extensions/yii2-rbac/src',
        ],
    
    ];

    只要添加这行就可以使用扩展的命名空间了,就可以愉快的开发了。

    同样的道理,如果我们再 GitHub 上看到一个扩展不能用 composer 下载下来怎么办?其实我们可以自己定义一个 vendor 目录,然后给扩展配置一个路径别名就是可以用的。

    注意

    按照习惯,我们的扩展一般写在 src 目录下,所以你要手动新建一个 src 文件夹,然后再用 Gii 去生成模块到 src 文件夹里,并且还要改扩展根目录下的 composer.json 文件。

    "autoload": {
        "psr-4": {
            // "yiier\rbac\": ""  //  原来的
            "yiier\rbac\": "src"
        }
    }

    下面分享一些优秀的开源模块 https://github.com/forecho/awesome-yii2#module-模块

    来源地址:http://www.getyii.com/topic/186

  • 相关阅读:
    oracle常用hint的用法
    浅谈reverse函数与django哲学
    javascript console
    python os.path模块
    删除列表元素
    Python模块学习 pickle, cPickle 对象序列化/反序列化
    Python中zip()函数用法举例
    Python 字符串方法详解
    常用正则验证
    python中下划线的用法
  • 原文地址:https://www.cnblogs.com/yhdsir/p/5181757.html
Copyright © 2011-2022 走看看