当 config/admin.php
中的 show_development_tools
设置为 true
时,代码生成器将在后台开发工具菜单中显示。
代码生成器是 Owl Admin 的核心功能之一,能够根据数据库表结构自动生成完整的 CRUD 代码,包括模型、控制器、服务层、数据库迁移文件等,大幅提升开发效率。
访问代码生成器:后台 → 开发工具 → 代码生成器
基本信息配置:
id
)选择需要生成的文件类型:
选项 | 说明 | 生成内容 |
---|---|---|
创建数据库迁移 | 生成 Laravel 迁移文件 | database/migrations/xxx_create_table.php |
创建数据表 | 执行迁移创建表 | 在数据库中创建对应表结构 |
创建模型 | 生成 Eloquent 模型 | app/Models/ModelName.php |
创建控制器 | 生成控制器文件 | app/Admin/Controllers/ControllerName.php |
创建服务 | 生成服务层文件 | app/Admin/Services/ServiceName.php |
字段属性设置:
组件配置:
路由设置:
菜单配置:
表单类型:
页面布局:
生成代码前可预览所有文件内容:
保存配置:每次生成都会保存配置记录,便于后续修改和复用
导入/导出:
克隆记录:基于现有记录快速创建相似功能
选择性清理:
安全机制:清理前会显示将要删除的文件列表,确认后执行
代码生成器会自动管理路由文件 routes/admin.php
:
命令行工具:
手动配置:
routes/admin.php
中手动添加路由生成的路由遵循标准 RESTful 规范:
代码生成器支持多种主流数据库:
数据库 | 驱动 | 特性支持 |
---|---|---|
MySQL | mysql | 完整支持,包括字段注释、索引等 |
PostgreSQL | pgsql | 支持高级数据类型和约束 |
SQLite | sqlite | 轻量级支持,适合开发环境 |
系统会自动将数据库字段类型映射为对应的表单组件:
数据库类型 | 表单组件 | 说明 |
---|---|---|
varchar/char/text | TextControl | 文本输入框 |
int/bigint | NumberControl | 数字输入框 |
decimal/float | NumberControl | 小数输入框 |
date/datetime | DateTimeControl | 日期时间选择器 |
enum | SelectControl | 下拉选择框 |
json | JsonSchemaControl | JSON 编辑器 |
text/longtext | TextareaControl | 多行文本框 |
自动识别功能:
智能过滤:
id
、created_at
、updated_at
、deleted_at
)生成的模型文件包含:
生成的控制器包含完整的 CRUD 操作:
生成的服务层处理业务逻辑:
字段命名:
user_name
、created_at
is_
前缀:is_active
、is_deleted
status
或 state
字段类型选择:
bigint unsigned auto_increment
decimal
类型timestamp
或 datetime
索引设计:
分步生成:
配置管理:
生成后优化:
扩展功能:
权限问题:
storage
和 bootstrap/cache
目录权限文件冲突:
数据库连接:
命名规范:
性能优化:
版本控制:
增量更新: