关于多应用的一个不成熟的小建议

powerbowen

先上文档

https://www.workerman.net/doc/webman/multiapp.html

问题描述

多应用中,创建的应用和APP目录下其它目录为同级
那么以模块或者以业务线对应用进行划分的情况下,会导致APP目录下大量文件

    .
    ├── app                           应用目录
    │   ├── backend                   多应用,管理后台应用目录
    │   ├── wechat                    多应用,微信应用目录
    │   ├── api                       多应用,API应用目录
    │   ├── controller                控制器目录,用作首页
    │   ├── model                     模型目录
    │   ├── view                      视图目录
    │   ├── command                   脚本目录
    │   ├── constant                  常量目录
    │   ├── exception                 自定义异常处理目录
    │   ├── queue                     队列消费目录
    │   ├── service                   服务目录
    │   ├── tool                      工具目录
    │   ├── validate                  验证器目录
    │   └── middleware                中间件目录
    │       └── StaticFile.php        自带静态文件中间件

改进

是否可以参考YII,其中有个概念是模块
把应用集中在一个文件夹下,比如

    .
    ├── app                           应用目录
    │   ├── module                    多应用模块
    │   │   ├── backend               管理后台应用目录
    │   │   ├── wechat                微信应用目录
    │   │   ├── api                   API应用目录
    │   │   └── controller            控制器目录,用作首页
    │   ├── model                     模型目录
    │   ├── view                      视图目录
    │   ├── command                   脚本目录
    │   ├── constant                  常量目录
    │   ├── exception                 自定义异常处理目录
    │   ├── queue                     队列消费目录
    │   ├── service                   服务目录
    │   ├── tool                      工具目录
    │   ├── validate                  验证器目录
    │   └── middleware                中间件目录
    │       └── StaticFile.php        自带静态文件中间件

不知道这个建议是否可行,也不知道作者是否之前考虑并抛弃了这个方案,纯个人YY,望大佬指出问题或设计深意

1356 4 0
4个回答

咸鱼.php

我记得之前好像就可以(之前试过),新版的你可以试下,我还没试

  • 暂无评论
walkor 打赏

不会支持module这种目录结构,
第一、目录结构基本已经定型了,不能随便更改
第二、添加module概念增加了使用难度,用户还要去理解是么是module
第三、增加module使得目录结构看起来更复杂

  • powerbowen 2022-10-14

    如果想自己改造的话,需要调整什么东西,刚在找怎么调整

  • walkor 2022-10-14

    你觉得目录多,不如把

        │   ├── model                     模型目录
        │   ├── view                      视图目录
        │   ├── command                   脚本目录
        │   ├── constant                  常量目录
        │   ├── exception                 自定义异常处理目录
        │   ├── queue                     队列消费目录
        │   ├── service                   服务目录
        │   ├── tool                      工具目录
        │   ├── validate                  验证器目录
        │   └── middleware                中间件目录

    这些目录单独挪到一个目录里,app下只放多应用

  • powerbowen 2022-10-14

    有道理,刚钻牛角尖了,感谢解惑

比yii的结构更好,你多应用的时候例如公共的model,controller,都可以放common里面,其他每个应该都可以有自己的控制器和model

  • powerbowen 2022-10-14

    3Q,已经按照老大和你的建议调整了项目目录

dengje

我目前就是类似这样做的,多应用模式。
app目录下一个目录对应一个模块
截图
路由使用的是注释路由
截图
管理界面使用的是mineadmin-vue

年代过于久远,无法发表回答
×
🔝