Delayed Job Web 项目教程
1. 项目的目录结构及介绍
delayed_job_web/
├── Gemfile
├── Gemfile.lock
├── LICENSE
├── README.md
├── Rakefile
├── app
│ └── views
│ ├── _job.erb
│ ├── _jobs.erb
│ ├── _queue.erb
│ ├── _queues.erb
│ ├── _sidebar.erb
│ ├── failed.erb
│ ├── index.erb
│ ├── layout.erb
│ └── pending.erb
├── config.ru
├── delayed_job_web.gemspec
├── lib
│ ├── delayed
│ │ └── web
│ │ ├── engine.rb
│ │ └── version.rb
│ └── delayed_job_web.rb
└── test
├── delayed_job_web_test.rb
└── test_helper.rb
目录结构介绍
- Gemfile 和 Gemfile.lock: 用于管理项目的依赖。
- LICENSE: 项目的许可证文件。
- README.md: 项目说明文档。
- Rakefile: 用于定义Rake任务。
- app/views: 包含项目的视图文件,用于渲染网页界面。
- config.ru: 项目的启动文件。
- delayed_job_web.gemspec: 项目的gemspec文件,用于打包和发布。
- lib: 包含项目的核心代码。
- test: 包含项目的测试文件。
2. 项目的启动文件介绍
config.ru
config.ru
是项目的启动文件,用于启动Sinatra应用程序。以下是文件内容示例:
require 'delayed_job_web'
run DelayedJobWeb
启动文件介绍
- require 'delayed_job_web': 引入
delayed_job_web
gem。 - run DelayedJobWeb: 运行
DelayedJobWeb
应用程序。
3. 项目的配置文件介绍
delayed_job_web.gemspec
delayed_job_web.gemspec
是项目的gemspec文件,用于定义gem的元数据和依赖。以下是文件内容示例:
Gem::Specification.new do |spec|
spec.name = "delayed_job_web"
spec.version = "1.4.4"
spec.authors = ["Erick Schmitt"]
spec.email = ["ejschmitt@gmail.com"]
spec.summary = "Web interface for delayed_job"
spec.description = "Web interface for delayed_job, inspired by resque"
spec.homepage = "https://github.com/ejschmitt/delayed_job_web"
spec.license = "MIT"
spec.files = `git ls-files -z`.split("\x0")
spec.executables = spec.files.grep(%r{^bin/}) { |f| File.basename(f) }
spec.test_files = spec.files.grep(%r{^(test|spec|features)/})
spec.require_paths = ["lib"]
spec.add_runtime_dependency "activerecord", "> 3.0.0"
spec.add_runtime_dependency "delayed_job", "> 2.0.3"
spec.add_runtime_dependency "sinatra", ">= 1.4.4"
spec.add_development_dependency "minitest", "~> 4.2"
spec.add_development_dependency "rack-test", "~> 0.6"
spec.add_development_dependency "rails", "~> 4.0"
end
配置文件介绍
- spec.name: gem的名称。
- spec.version: gem的版本。
- spec.authors 和 spec.email: 作者信息。
- spec.summary 和 spec.description: gem的简要描述和详细描述。
- spec.homepage: 项目的主页。
- spec.license: 许可证类型。
- spec.files: 项目文件列表。
- spec.executables: 可执行文件列表。
- spec.test_files: 测试文件列表