salehhashemi / laravel-intelli-db
一个由人工智能驱动的Laravel包,用于生成和管理数据库相关事务。
Requires
- php: ^8.1
- illuminate/support: ^9.0|^10.0
Requires (Dev)
- laravel/pint: ^1.8
- orchestra/testbench: ^8.0
- phpstan/phpstan: ^1.10
- phpunit/phpunit: ^9.0
README
Laravel IntelliDB
一个Laravel包,提供使用OpenAI智能生成数据库相关组件的方法。
它扩展了Laravel默认的artisan make
命令,根据提供的描述自动使用人工智能生成每个组件的内容。
功能
本包实现了以下命令:
ai:rule
- 使用人工智能生成自定义验证规则ai:migration
- 使用人工智能生成迁移文件ai:factory
- 使用人工智能生成工厂文件ai:model
- 使用人工智能生成模型文件
请关注未来的更新,我们将继续扩展Laravel Intelli DB包的功能。
安装
-
通过composer安装包
composer require salehhashemi/laravel-intelli-db
-
发布配置文件
php artisan vendor:publish --provider="Salehhashemi\LaravelIntelliDb\LaravelIntelliDbServiceProvider"
-
将您的OpenAI API密钥添加到
.env
文件中OPEN_AI_KEY=your_openai_key
-
可选地,您可以在
.env
文件中更改OpenAI默认使用的模型OPEN_AI_MODEL=gpt-4
要调整人工智能文本生成的行为,您可以在配置文件中设置以下参数
'temperature' => 0.7
'frequency_penalty' => 0.2
使用方法
ai:rule
要使用人工智能创建新的验证规则,请运行以下命令
php artisan ai:rule YourRuleName
您可以使用--description
选项提供规则的描述
php artisan ai:rule YourRuleName --description="Your rule description"
如果您不提供描述,它将交互式地请求它。
生成的规则类将放在app/Rules
目录中。
ai:migration
要使用人工智能创建新的迁移文件,请运行以下命令
php artisan ai:migration your_migration_name
您可以使用--description
选项提供迁移的描述
php artisan ai:migration your_migration_name --description="Your migration description"
您还可以使用--table
选项指定迁移的表名
php artisan ai:migration your_migration_name --table=your_table_name
这将附加所需表的模式以提供更好的结果。
您还可以使用--path
选项设置迁移文件应创建的位置
php artisan ai:migration your_migration_name --path=path/to/migrations
如果您不提供描述,它将交互式地请求它。
生成的迁移文件将放在database/migrations
目录或指定的路径中。
ai:factory
要使用人工智能创建新的工厂文件,请运行以下命令
php artisan ai:factory YourFactoryName
您可以使用--model
选项提供将要创建工厂的模型的名称
php artisan ai:factory YourFactoryName --model="YourModelName"
如果您不提供模型,它将交互式地请求它。
生成的工厂文件将放在database/factories
目录中。
ai:model
要使用人工智能创建新的模型文件,请运行以下命令
php artisan ai:model YourModelName
生成的模型文件将放在app/Models
目录中。
生成的模型将包括属性、关系和方法以及适当的类型提示的PHP DocBlock注释。
示例
ai:rule
要创建一个验证唯一电子邮件地址的规则,请运行
php artisan ai:rule UniqueEmail --description="Validate unique email address"
ai:migration
要创建一个向用户表添加电子邮件列的迁移,请运行
php artisan ai:migration AddEmailToUsersTable --description="Add email column to users table" --table=users
ai:factory
要为用户模型创建工厂,请运行
php artisan ai:factory UserFactory --model="User"
ai:model
要创建一个名为Address的模型,请运行
php artisan ai:model Address
测试
composer test
变更日志
请参阅CHANGELOG以获取更多有关最近更改的信息。
贡献
请参阅CONTRIBUTING获取详细信息。
致谢
许可证
MIT许可证(MIT)。请参阅许可证文件获取更多信息。