https://github.com/birjemin/module-generator
:nut_and_bolt: 不太喜欢用的老的代码风格生成器 :rainbow:
https://github.com/birjemin/module-generator
laravel module-generator self
Last synced: 3 months ago
JSON representation
:nut_and_bolt: 不太喜欢用的老的代码风格生成器 :rainbow:
- Host: GitHub
- URL: https://github.com/birjemin/module-generator
- Owner: Birjemin
- Created: 2018-05-13T03:42:54.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2018-09-14T02:05:18.000Z (about 7 years ago)
- Last Synced: 2025-05-17T05:46:47.942Z (5 months ago)
- Topics: laravel, module-generator, self
- Language: PHP
- Homepage:
- Size: 16.6 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: Readme.md
- Changelog: CHANGELOG.md
Awesome Lists containing this project
README
# module-generator
## 游戏简介
为laravel生成如下的项目结构,方便管理和书写。
## 游戏地图
```
app |
|- Base |
|--- Repository
|--- Transformer
|--- Job|- Module |
|--- Xxxx |
|--- Conf
|--- Model
|--- Provider
|--- Repository
|--- Service
|--- Transformer
|--- XxxInTrait.php
|--- XxxModule.php
|--- XxxModuleInterface.php
|--- XxxOutTrait.php
```## 游戏说明
* app为项目目录:
* Module为模块目录,将项目分成相应的模块;
* Config为配置目录(对内)
* Models为数据库Model目录(对内)
* Provider为注册目录
* Repository为数据库操作Model的仓库(对内)
* Service为处理复杂逻辑(对内)
* Transformer方法来格式化输出数据(对外)
* Module文件为模块入口(对外)
* OutTrait为对外暴露Module和Transformer文件出口(对外)
* InTrait为调用其他模块的入口(对内)## 游戏规则
```
1.Controller只能通过OutTrait访问模块,OutTrait只能暴露Module和Transformer这两个对外的文件;
2.Model只能被Repository调用;
3.Repository和Service只能被对应模块中的Module调用,不能对外;
4.跨模块调用只能调用模块的Module,不能调用模块里面其他对象
```## 使用说明
* 引入
```
composer require birjemin/module-generator
```* 命令使用
```
php artisan birjemin:module-generator moduleName
```* 疑问
> laravel version > 5.5
> [https://github.com/Birjemin/laravel-generator](https://github.com/Birjemin/laravel-generator)