salehhashemi / laravel-intelli-graphql
一个基于数据库表生成 GraphQL 模式、查询和变异的 AI 驱动的 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 IntelliGraphQL 包是一个基于给定数据库表生成 GraphQL 模式、查询和变异的 AI 驱动的 Laravel 包。
安装
-
使用 composer 安装此包
composer require salehhashemi/laravel-intelli-graphql -
发布配置文件
php artisan vendor:publish --provider="Salehhashemi\LaravelIntelliGraphql\LaravelIntelliGraphqlServiceProvider" -
将您的 OpenAI API 密钥添加到
.env文件OPEN_AI_KEY=your_openai_key -
可选地,您可以在
.env文件中更改 OpenAI 默认模型OPEN_AI_MODEL=gpt-4
使用方法
要使用 Laravel IntelliGraphQL 包,您可以在终端中使用 ai:graphql 命令,并提供数据库表的名称作为参数
php artisan ai:graphql {table}
将 {table} 替换为您希望生成 GraphQL 模式、查询和变异的表的名称。
例如
php artisan ai:graphql users
此命令将为用户表生成 GraphQL 模式、查询和变异,并将它们放在 Laravel 项目根目录下的 graphql 目录中的 users.graphql 文件中。
生成的 GraphQL 模式、查询和变异将包括提供的表中的所有列。AI 模型使用这些信息来智能地生成适当的 GraphQL 模式、查询和变异。
示例
假设您有一个名为 users 的表,其中包含以下列:id、name、email、email_verified_at、password、remember_token、created_at、updated_at。
运行命令 php artisan ai:graphql users 将在 Laravel 项目根目录下的 graphql 目录中生成一个 users.graphql 文件。内容可能如下所示
type User {
id: ID!
name: String!
email: String!
emailVerifiedAt: DateTime
password: String!
rememberToken: String
createdAt: DateTime!
updatedAt: DateTime!
}
type Query {
users: [User!]!
user(id: ID!): User
}
type Mutation {
createUser(name: String!, email: String!, password: String!): User!
updateUser(id: ID!, name: String, email: String, password: String): User
deleteUser(id: ID!): User
}
测试
composer test
变更日志
有关最近更改的更多信息,请参阅 CHANGELOG
贡献
有关详细信息,请参阅 CONTRIBUTING
致谢
许可证
MIT 许可证 (MIT)。有关更多信息,请参阅 许可证文件
