dry_crud 项目使用教程
1. 项目的目录结构及介绍
dry_crud 是一个用于生成简洁且可扩展的 CRUD 控制器视图和辅助工具的 Rails 项目。以下是项目的基本目录结构及其介绍:
dry_crud/
├── app/
│ ├── controllers/
│ ├── helpers/
│ ├── models/
│ ├── views/
├── config/
│ ├── environments/
│ ├── initializers/
│ ├── locales/
│ ├── routes.rb
├── db/
│ ├── migrate/
│ ├── seeds.rb
├── lib/
│ ├── tasks/
├── spec/
├── Gemfile
├── Gemfile.lock
├── Rakefile
├── README.md
目录结构介绍
- app/: 包含应用程序的主要代码,包括控制器、辅助工具、模型和视图。
- config/: 包含应用程序的配置文件,如环境配置、初始化脚本、本地化文件和路由配置。
- db/: 包含数据库相关的文件,如迁移脚本和种子数据。
- lib/: 包含自定义库和任务。
- spec/: 包含测试代码。
- Gemfile: 定义项目所需的 RubyGems。
- Gemfile.lock: 锁定 Gemfile 中定义的 Gem 版本。
- Rakefile: 定义 Rake 任务。
- README.md: 项目说明文档。
2. 项目的启动文件介绍
dry_crud 项目的启动文件主要是 config/application.rb
和 config/environment.rb
。
config/application.rb
这是 Rails 应用程序的主要配置文件,包含了应用程序的基本设置,如时区、编码等。
require_relative "boot"
require "rails/all"
# Require the gems listed in Gemfile, including any gems
# you've limited to :test, :development, or :production.
Bundler.require(*Rails.groups)
module DryCrud
class Application < Rails::Application
# Initialize configuration defaults for originally generated Rails version.
config.load_defaults 7.0
# Configuration for the application, engines, and railties goes here.
#
# These settings can be overridden in specific environments using the files
# in config/environments, which are processed later.
#
# config.time_zone = "Central Time (US & Canada)"
# config.eager_load_paths << Rails.root.join("extras")
end
end
config/environment.rb
这是加载 Rails 应用程序环境的主要文件,它会加载 config/application.rb
并初始化应用程序。
# Load the Rails application.
require_relative "application"
# Initialize the Rails application.
Rails.application.initialize!
3. 项目的配置文件介绍
dry_crud 项目的配置文件主要位于 config/
目录下,包括环境配置、初始化脚本、本地化文件和路由配置。
config/routes.rb
这是定义应用程序路由的文件,决定了 URL 如何映射到控制器和动作。
Rails.application.routes.draw do
# Define your application routes per the DSL in https://guides.rubyonrails.org/routing.html
# Defines the root path route ("/")
# root "articles#index"
end
config/environments/
这个目录包含了不同环境的配置文件,如 development.rb
, test.rb
, 和 production.rb
。
config/environments/development.rb
开发环境的配置文件,包含了一些开发时需要的设置,如日志级别、缓存等。
Rails.application.configure do
# Settings specified here will take precedence over those in config/application.rb.
# In the development environment your application's code is reloaded any time
# it changes. This slows down response time but is perfect for development
# since you don't have to restart the web server when you make code changes.
config.cache_classes = false
# Do not eager load code on boot.
config.eager_load = false
# Show full error reports.
config.consider_all_requests_