niraj/crudstarter
Composer 安装命令:
composer require niraj/crudstarter
包简介
Package that automated the work the clean dashboard.
关键字:
README 文档
README
Crud and API Generator Package
Package which lets you automate tedious CRUD Operations.
Detailed Package Docs
GO TO DOCS
Requirements
Laravel Version: >= 8.0
PHP Version: >= 7.3
Composer: >= 2.0
Installation
composer require niraj/crudstarter --dev
Required (Publish the config file)
php artisan vendor:publish --tag=crudstarter-config
Optional (If you want to edit stub files)
php artisan vendor:publish --tag=crud-stub
Generate Dashboard (One time command)
php artisan gen:dashboard
Package Usage
Basic Usage
- To generate CRUD
php artisan gen:crud {ModelName} --fields="fieldName:dataType fieldName:dataType"
- To generate API
php artisan gen:api {ModelName} --fields="fieldName:dataType fieldName:dataType
- To delete CRUD Files
php artisan del:crud {ModelName}
- To delete API Files
php artisan del:api {ModelName}
Example: To generate Post CRUD
php artisan gen:crud Post --fields="name:str slug:str description:text image:str status:bool"
Adding Fields
You can add fields in gen commands which auto fills model, migration, request and api resources
To add fields we use
--fields="field_name1:data_type1{space}field_name2:data_type2"
Example: To generate Post CRUD with fields
php artisan gen:crud Post --fields="name:str description:text count:int by_admin:bool is_published:select:options=published,pending"
Note: Please run auto-alignment (code-formatting) command in your ide/text-editor in generated blade files [eg:
Ctrl+Alt+Shift+Lin phpstorm].
Adding Relationships
to add this functionality simply add --relations="your code here" in gen command
Example: To generate Profile CRUD with relations (hasOne: Account, hasMany: Blogs and belongTo: User)
php artisan gen:crud Profile --fields="name:str user_id:fid" --relations="haso:account hasm:blogs belt:user"
| Relation Name | Short Hand For |
|---|---|
| haso | hasOne |
| hasm | hasMany |
| belt | belongsTo |
| belm | belongsToMany |
Note: you can use
hasMany,belongsToetc directly in --relations command if you feel comfortable and it currently only supports these 4 common relations type.
Adding Soft-Deleting fuctionality
to add this functionality simply add --softDelete in gen command
Example: To generate Post CRUD with soft deletes
php artisan gen:crud Post --fields="name:str description:text" --softDelete
Field Data Type
some short hands for convenience are provided i.e instead of unsignedInteger we can use uint instead while defining fields
| Data type Name | Short Hand For |
|---|---|
| inc | increments |
| int | integer |
| uint | unsignedInteger |
| tinyint | tinyInteger |
| utinyint | unsignedTinyInteger |
| smallint | smallInteger |
| usmallint | unsignedSmallInteger |
| mediumint | mediumInteger |
| umediumint | unsignedMediumInteger |
| bigint | bigInteger |
| ubigint | unsignedBigInteger |
| txt | text |
| tinytext | tinyText |
| mediumtext | mediumText |
| longtext | longText |
| bool | boolean |
| fid | foreignId |
Note: For other data types like
date, enum, decimal, uuidetc can typed as it is.
What will be generated !
-
CRUD
-[ Model, Controller, Blade Files, Request, Migration ] with Feature Test Skeleton!
-
API
-[ ApiController, ApiRequest, ApiResource ] with Feature Test Skeleton!
Note: Model, Factory, Migration can be also generated for API if needed.
Customization
- You can easily customize everything to your need by simply changing stubs files present in crud-stub folder present in resources/crud-stub
Notes
-
You may have to easily customize blade files according to your dashboard template. Which Can be done easily.
-
HAPPY CODING 🤘
niraj/crudstarter 适用场景与选型建议
niraj/crudstarter 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 620 次下载、GitHub Stars 达 19, 最近一次更新时间为 2021 年 07 月 31 日, 在 PHP 生态内属于活跃度较高的组件。
它主要适用于以下技术方向: 「laravel」 「dashboard」 「admin panel」 「crud generator」 「laravel package」 「API generator」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。
我们在过去多个企业项目中使用过 niraj/crudstarter 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。
基于 niraj/crudstarter 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。
线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。
承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。
与 niraj/crudstarter 相关的其它包
同方向 / 同关键字的高下载量 PHP Composer 包推荐,方便对比选型:
2lenet/EasyAdminPlusBundle
Analysis module for finding problematical shop data.
A short description of what your package does
Scout support for MoonShine
Production-ready Laravel Prometheus metrics package with built-in collectors for HTTP, database, cache, queue, events, errors, filesystem, and mail monitoring
Laravel Package for integrating Tabler template and this package is Laravel Mix friendly.
统计信息
- 总下载量: 620
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 19
- 点击次数: 19
- 依赖项目数: 0
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2021-07-31
