简介
默认的 Disczu! Q 是按照业务功能来进行目录分类。
App 目录
app 目录包含应用程序的核心代码。你应用中几乎所有的类都应该放在这里。稍后我们会更深入地了解这个目录的细节。
Config 目录
config 目录,顾名思义,包含应用程序所有的配置文件。我们鼓励你通读这些文件,以便帮助你熟悉所有可用的选项。
Database 目录
database 目录包含数据填充和迁移文件。
Public 目录
public 目录包含了入口文件 index.html 和 index.php ,它是进入应用程序的所有请求的入口点。此目录还包含了一些你的资源文件(如图片、JavaScript 和 CSS)。
Resources 目录
resources 目录包含了视图和未编译的资源文件(如 LESS、SASS 或 JavaScript)。此目录还包含你所有的语言文件。
Routes 目录
routes 目录包含了应用的所有路由定义,Laravel 默认包含了几个路由文件:web.php、api.php。
web.php 目录为安装程序提供,页面渲染。
api.php 为接口路由分组为 /api 前缀。
Storage 目录
storage 目录包含编译后的 Blade 模板、cache 缓存文件以及框架生成的其他文件。这个目录被细分成 app, framework 和 logs 三个子目录。app 目录可以用来存储应用生成的任何文件。 framework 目录用来存储框架生成的文件和缓存。最后, logs 目录包含应用的日志文件。
storage/app/public 可以用来存储用户生成的文件,比如需要公开访问的用户头像。你应该创建一个 public/storage 的软链接指向这个目录。你可以直接通过 php disco storage:link 命令来创建此链接(安装程序会自动创建)。
Vendor 目录
vendor 目录包含你所有的 Composer 依赖包。
jsonapi.org
Discuz! Q 使用的是 jsonapi.org 定义的格式,使用 tobscure/json-api 包的实现。
路由分别对应
- 以psr-2基础命名规则外,下面为实践中相关命名规则
- 以user为例, 路由和路由名称为小写复数按功能以.分开
- 控制器按功能,列表为复数,其它单条担任可为单数驼峰命名
- 序列化模型名为单数驼峰命名
- 数据库模型以单数驼峰命名
- 表名以复数命名
下面为具体增删改查路由例子:
1 2 3 4 5 6 |
$route->get('/users', 'u |