2017-02-12 13 views
1

Когда я запускаю приложение rails, я обычно просматриваю тот же процесс, что и мой dev env. Добавление pry-byebug или различных драгоценных камней guard-* и инициализация Guardfile.Настройка rails dev env

Есть ли лучший способ автоматизировать этот процесс?

Некоторые идеи я подумал:

  • Создание задач граблей, которые будут добавлять записи в Gemfile, запустить bundle install и bundle exec guard init livereload и т.д ...
  • Создать отдельное приложение командной строки, которая генерирует нужные файлы и запускает правильные команды оболочки.

Есть ли еще более простой способ?

ответ

1

Вы можете использовать описанный метод шаблонов here. Вы создаете файл с именем template.rb, который содержит ваши нужные драгоценные камни и команды. Затем вы создаете новые рельсы приложение с

rails new blog -m ~/template.rb 

Образцом template.rb является

generate(:scaffold, "person name:string") 
route "root to: 'people#index'" 
rails_command("db:migrate") 

after_bundle do 
    git :init 
    git add: "." 
    git commit: %Q{ -m 'Initial commit' } 
end 

Другим способом, который я нахожу гораздо проще просто поддерживать хранилище GitHub, который содержит все, что вы хотите в голой кости Rails приложение. Затем просто git pull, что в папку, когда вы хотите создать новое приложение. Единственное, что вам нужно было бы переписать, это имя приложения в application.rb

Здесь github repo, который представляет собой комбинацию из двух видов, предназначен для программирования на Mac, но легко изменен.

+0

Можно ли добавить в реестр кнопки «рельсы», например '--skip-spring'? Я знаю, вы можете добавить их в свой файл '~/.railsrc', но любопытно, если это возможно в шаблонах? – mbigras

+0

Я не пробовал это на самом деле, поэтому я не хочу комментировать его. Я бы предположил, что это сработает. – Iceman

+0

http://guides.rubyonrails.org/rails_application_templates.html#ask-question Вы можете «задать» вопрос в шаблоне и, возможно, просто удалить все связанные с весной вещи, если да? – Iceman

1

См. Iceman's answer для получения дополнительной информации.

Использование рельсов application templates - отличный вариант.

Например, если вы хотите получить и работает с guard-livereload и pry-byebug и быстро эшафот в Post ресурс, то следующий шаблон приложения (это просто рубин файл) сохраняется в ~/sandboxy.rb будет работать:

gem_group :development do 
    gem 'pry-byebug' 
    gem 'guard-livereload' 
end 


run 'bundle exec guard init livereload' 

after_bundle do 
    git :init 
    git add: "." 
    git commit: %Q{ -m 'Initial commit' } 
end 

generate(:scaffold, "post title body:text") 
route "root to: 'posts#index'" 
rails_command("db:migrate") 

git add: '.' 
git commit: %Q{ -m 'Scaffold a post' } 

Затем вы можете создать новое приложение с помощью следующей команды:

rails new some_app -m ~/sandbox.rb 

 Смежные вопросы

  • Нет связанных вопросов^_^