salehhashemi/laravel-intelli-db

一个由人工智能驱动的Laravel包,用于生成和管理数据库相关事务。

v0.7.0 2023-11-02 20:04 UTC

This package is auto-updated.

Last update: 2024-09-10 06:06:24 UTC


README

Laravel IntelliDB

Latest Version on Packagist Total Downloads GitHub Actions GitHub Actions PHPStan

一个Laravel包,提供使用OpenAI智能生成数据库相关组件的方法。

它扩展了Laravel默认的artisan make命令,根据提供的描述自动使用人工智能生成每个组件的内容。

Header Image

功能

本包实现了以下命令:

  • ai:rule - 使用人工智能生成自定义验证规则
  • ai:migration - 使用人工智能生成迁移文件
  • ai:factory - 使用人工智能生成工厂文件
  • ai:model - 使用人工智能生成模型文件

请关注未来的更新,我们将继续扩展Laravel Intelli DB包的功能。

安装

  1. 通过composer安装包

    composer require salehhashemi/laravel-intelli-db
    
  2. 发布配置文件

    php artisan vendor:publish --provider="Salehhashemi\LaravelIntelliDb\LaravelIntelliDbServiceProvider"
    
  3. 将您的OpenAI API密钥添加到.env文件中

    OPEN_AI_KEY=your_openai_key
    
  4. 可选地,您可以在.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)。请参阅许可证文件获取更多信息。