Ruby on Rails完整的应用程序模板

时间:2015-08-21 18:50:41

标签: ruby-on-rails ruby git

我想创建Rails 应用程序模板,因此当我运行rails new时,它应该:

  • 覆盖Gemfile(添加gems,删除gems和那些糟糕的评论等。)
  • 将应用程序布局文件转换为HAML并编辑其内容
  • 编辑资产文件以根据需要导入bootstrap-sass文件
  • 在database.yml
  • 中编辑和设置我的数据库变量
  • 也许别的东西,dunno atm ...

我只是希望它准备好了,我希望你能理解我到目前为止。

我怎么能实现这个目标?

我知道rails composer,但我不想从这些应用程序模板中选择,我希望我总是使用一套具有常量工具的模板。我可以向GitHub提交新的应用程序,然后每次只需更改我的新项目名称就可以运行git clone,但它是最好的解决方案吗?

2 个答案:

答案 0 :(得分:3)

您可以使用精彩的Rails功能Rails Application Templatesrails new project_name -m /path/to/template.rb

Here is my own template

# minitest, capistrano, pry
gem_group :development do
  gem 'puma'
  gem 'capistrano',         '2.15.5'
  gem 'rvm-capistrano'
  gem 'pry-rails',          '~> 0.3.2'
end

gem_group :test do
  gem 'minitest-rails'
  gem 'letter_opener'
  gem 'ffaker', require: false
end

run "bundle install"

#install minitest test_helper
generate 'mini_test:install'

environment "config.generators do |g|\n      g.test_framework :mini_test, spec: true, fixture: true\n    end"

#Add pride to minitest config
run "sed -i '' '4 s#^#require \"minitest/pride\"#' test/test_helper.rb"

#create postgres DB in postgresql 
#development and test
run "psql -c 'CREATE DATABASE #{app_path}_development;'"
run "psql -c 'CREATE DATABASE #{app_path}_test;'"

#add database yml
run "sed -i '' '4 s#^#require \"minitest/pride\"#' test/test_helper.rb"

#Add minitest features to Rake task
run %q^echo 'MiniTest::Rails::Testing.default_tasks << "features"' >> Rakefile^

#Fix README.md
run "rm README.rdoc"
run "touch README.md"

#Initialize local Git repository and Initial Commit
git :init
git add: "."
git commit: "-a -m 'Initial commit :pray:'"

答案 1 :(得分:-1)

我们开发了一个Rails应用程序模板。

https://github.com/agilie/Rails-Application-Template

目前它包含测试,部署,文档生成功能,sidekiq,redis和其他许多宝石和东西。 它完全可定制,您可以轻松地根据您的需求进行增强。随意分叉并提出拉动请求。至于我,这将是你创建自己的起点的好起点。