能不能给控制器加个 Controller 后缀啊,加个配置也行

aphper

控制器叫User 模型叫User 在控制器里调用User模型 只有两种办法 否则就会冲突

第一种 别名

    use User as UserModel

第二种 每次写全命名空间

    $model = new app\models\User()

无论哪一种都不方便 ,最方便的就是控制器叫 UserController,比较控制器除了定义时,基本不会需要手动调用,而调用模型之类的类频率很高,采用上面两种方式比较繁琐

希望作者能改控制器后缀或者允许自定义

2502 5 0
5个回答

aphper

主流的框架显然都考虑到了这种问题

  • 暂无评论
nitron

你用Controller后缀也没有影响啊,无非是不能自动映射路由

  • 暂无评论
ersic

laravel 不存在这个问题是因为他路由都要自定义,webman 也可以使用这种方式啊,然后 controller 随便什么名字都行,跟 laravel 一样了。
https://www.workerman.net/doc/webman/route.html#%E7%B1%BB%E8%B7%AF%E7%94%B1

  • 暂无评论
tanhongbin

就加一个 as 别名呗,其实很多时候我们都是封装好数据调用,基本不会直接在控制器里面调用model

  • 暂无评论
walkor

https://www.workerman.net/page/update
升级到1.3.0,已经支持Controller后缀设置。

升级方法:
composer config -g --unset repos.packagist && composer require workerman/webman-framework ^1.3.0 && composer require webman/console ^1.0.16 && ./webman install

然后在 config/app.php 中增加配置 'controller_suffix' => 'Controller'

  • ersic 2022-03-14

    👍

  • aphper 2022-03-15

    love you

  • 楚羽幽 2022-03-21

    牛皮,正需要这个,在插件里面可以配置影响到config/app.php里面的配置嘛? 我想用我的插件配置吧这个后缀改了

  • walkor 2022-03-21

    插件不影响也不应该影响主业务。插件是否使用控制器后缀,需要用路由配置

  • Van Chin 2022-09-02

    支持 自定义 controller 目录么

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