GraphQL Ruby 项目教程
1. 项目的目录结构及介绍
GraphQL Ruby 项目的目录结构如下:
graphql-ruby/
├── app/
│ ├── graphql/
│ │ ├── mutations/
│ │ ├── types/
│ │ └── your_schema.rb
├── config/
│ ├── initializers/
│ │ └── graphql.rb
│ └── routes.rb
├── db/
├── lib/
├── spec/
├── Gemfile
├── Gemfile.lock
└── README.md
目录结构介绍
- app/graphql/: 包含 GraphQL 模式、类型和变更的定义。
- mutations/: 存放 GraphQL 变更的文件。
- types/: 存放 GraphQL 类型的文件。
- your_schema.rb: 定义 GraphQL 模式的主文件。
- config/: 包含项目的配置文件。
- initializers/graphql.rb: GraphQL 的初始化配置文件。
- routes.rb: 定义路由的文件。
- db/: 数据库相关文件。
- lib/: 自定义库文件。
- spec/: 测试文件。
- Gemfile: 定义项目依赖的 Gem 文件。
- Gemfile.lock: 依赖的 Gem 版本锁定文件。
- README.md: 项目说明文件。
2. 项目的启动文件介绍
GraphQL Ruby 项目的启动文件主要是 config/routes.rb
和 config/initializers/graphql.rb
。
config/routes.rb
Rails.application.routes.draw do
if Rails.env.development?
mount GraphiQL::Rails::Engine, at: "/graphiql", graphql_path: "/your/graphql/endpoint"
end
post "/your/graphql/endpoint", to: "graphql#execute"
end
config/initializers/graphql.rb
# 初始化 GraphQL 配置
GraphQL::Railtie.preload
3. 项目的配置文件介绍
GraphQL Ruby 项目的配置文件主要是 config/initializers/graphql.rb
和 Gemfile
。
config/initializers/graphql.rb
# 初始化 GraphQL 配置
GraphQL::Railtie.preload
Gemfile
source 'https://rubygems.org'
gem 'rails'
gem 'graphql'
gem 'graphiql-rails', group: :development
以上是 GraphQL Ruby 项目的基本教程,包含了项目的目录结构、启动文件和配置文件的介绍。希望对你有所帮助!