byancode / blueprint
一种表达性强、易于阅读的代码生成工具。
v1.23.2
2021-04-03 13:02 UTC
Requires
- doctrine/dbal: ^2.9|^3.0
- illuminate/console: ^6.0|^7.0|^8.0
- illuminate/filesystem: ^6.0|^7.0|^8.0
- illuminate/support: ^6.0|^7.0|^8.0
- laravel-shift/faker-registry: ^0.1
- symfony/yaml: ^4.3|^5.0
Requires (Dev)
- mockery/mockery: ^1.3
- orchestra/testbench: ^4.0|^5.0|^6.0
- phpunit/phpunit: ^8.0|^9.3
Suggests
- jasonmccreary/laravel-test-assertions: Required to use additional assertions in generated tests (^1.0).
- dev-master
- v1.23.2
- v1.23.1
- v1.23.0
- v1.22.0
- v1.21.0
- v1.20.2
- v1.20.1
- v1.20.0
- v1.19.2
- v1.19.1
- v1.19.0
- v1.18.0
- v1.17.0
- v1.16.0
- v1.15.3
- v1.15.2
- v1.15.1
- v1.15.0
- v1.14.0
- v1.13.2
- v1.13.1
- v1.13.0
- v1.12.0
- v1.11.2
- v1.11.1
- v1.11.0
- v1.10.1
- v1.10.0
- v1.9.1
- v1.9.0
- v1.8.0
- v1.7.1
- v1.7.0
- v1.6.0
- v1.5.1
- v1.5.0
- v1.4.1
- v1.4.0
- v1.3.1
- v1.3.0
- v1.2.2
- v1.2.1
- v1.2.0
- v1.1.1
- 1.1.0
- 1.0.1
- 1.0.0
- 0.5.1
- 0.5.0
- 0.4.0
- 0.3.0
- 0.2.1
- 0.2.0
- 0.1
- dev-fix-417
- dev-spaceemotion-use-aliased-import-for-resources
- dev-faker-registry
- dev-fix-292
- dev-fix-291
- dev-fix-207
This package is auto-updated.
Last update: 2024-09-06 19:35:25 UTC
README
Blueprint 是一个开源工具,可以从单一、易于阅读的定义中快速生成多个 Laravel 组件。
观看 Blueprint 的快速 演示 并继续阅读此文档以开始使用。
要求
Blueprint 需要 Laravel 应用程序运行 6.0 或更高版本。
安装
您可以使用以下命令通过 composer 安装 Blueprint
composer require --dev laravel-shift/blueprint
Blueprint 将自动通过 包发现 注册自己。
附加配置:如果您正在运行 Laravel 8 或注册基于类的路由或使用 app/Models
文件夹,您将需要配置 Blueprint。请参阅 Blueprint 文档 以获取更多指导。
基本用法
Blueprint 随带一套 artisan 命令。您最常用的命令是 blueprint:build
命令,用于生成 Laravel 组件
php artisan blueprint:build [draft]
草稿 文件包含要生成的组件的 定义。
让我们回顾以下用于生成一些 博客 组件的示例草稿文件
models: Post: title: string:400 content: longtext published_at: nullable timestamp author_id: id:user controllers: Post: index: query: all render: post.index with:posts store: validate: title, content, author_id save: post send: ReviewPost to:post.author.email with:post dispatch: SyncMedia with:post fire: NewPost with:post flash: post.title redirect: post.index
从这些简单的 20 行 YAML 中,Blueprint 将生成以下所有 Laravel 组件
- 一个完整的 模型 类
Post
,包括fillable
、casts
和dates
属性,以及关系方法。 - 创建
posts
表的 迁移。 - 一个智能设置列的 工厂。
- 一个
PostController
的 控制器 类,具有index
和store
动作,每个 语句 都有生成的代码。 - 路由 用于
PostController
的动作。 - 一个 表单请求 的
StorePostRequest
,基于Post
模型定义验证title
和content
。 - 一个 mailable 类
ReviewPost
,带有通过 构造函数 设置的post
属性。 - 一个 job 类
SyncMedia
,带有通过 构造函数 设置的post
属性。 - 一个 event 类
NewPost
,带有通过 构造函数 设置的post
属性。 - 一个 Blade 模板 的
post/index.blade.php
,由PostController@index
渲染。
注意: 此示例假设在默认 Laravel 应用程序中的功能,例如 User
模型和 `app.blade.php 布局。否则,生成的测试可能会失败。
文档
浏览 Blueprint 文档 以获取有关 定义模型、定义控制器、高级配置 和 扩展 Blueprint 的完整详细信息。