J'ai une application Rails 3.0 (techniquement 3.0.7) que je voudrais mettre à niveau vers Rails 3.1 pour utiliser le nouveau pipeline d'actifs et d'autres nouvelles fonctionnalités. Quelle est la meilleure approche pour le faire? Dois-je utiliser le générateur rails new
, puis copier tout de mon ancienne application sur le nouveau? Qu'en est-il du contrôle de version? J'ai déjà mon ancienne application en utilisant Git.Comment mettre à niveau une application Rails 3.0 vers Rails 3.1?
Répondre
Juste un de mes modernisés applications de 3.0.9 à 3.1.0, voici mon approche, peut varier votre kilométrage:
Modifier Gemfile, changer Rails version bijou
gem 'rails', '3.1.0'
ajoute également de nouvelles gemmes introduit dans 3.1.0
group :assets do
gem 'sass-rails', "~> 3.1.0"
gem 'coffee-rails', "~> 3.1.0"
gem 'uglifier'
end
gem 'jquery-rails'
run bundle update rails
Ensuite, exécutez rake rails:update
et résolvez les conflits.
Déplacez votre css/javascript/images etc dans le dossier app/assets
, assurez-vous qu'il ya un application.js
et un fichier application.css
(vous voudrez peut-être jeter un oeil à ces deux nouvellement créés de projets 3.1.0)
Inclure css/liens javascript dans votre fichier de mise en page comme celui-ci
<%= stylesheet_link_tag "application" %>
<%= javascript_include_tag "application" %>
Familiarisez-vous avec rails 3.1, voici les ressources: http://jasonrudolph.com/blog/2011/06/06/helpful-resources-for-upgrading-to-rails-3-1/
La chose la plus importante sont votre test en cours, assurez-vous d'avoir une bonne couverture de test de votre application 3.0 avant de commencer.
Je viens de le faire aujourd'hui avec une application de 3.0.9 Jetez un oeil à ce blog, c'est assez simple.
http://davidjrice.co.uk/2011/05/25/how-to-upgrade-a-rails-application-to-version-3-1-0.html
juste une question de changement de fichier de pierres précieuses, quelques variables de configuration, déplacer quelques actifs et créer des fichiers CSS et js manifestes, ne devrait pas prendre plus d'une heure.
Créez une nouvelle branche dans votre dépôt Git.
Jetez un oeil à la Rails 3.1 Example Apps si vous utilisez génie, RSpec ou concombre, car ils vous donneront une bonne mise en œuvre de référence de travail. Sinon, utilisez simplement rails new
pour créer une application Rails 3.1 simple.
Utilisez ensuite un outil de comparaison de fichiers (tel que FileMerge ou Modifications sur Mac OS X) pour identifier les différences entre le code Rails 3.1 et votre application 3.0.
copie ce gemmes à votre fichier de pierres précieuses remplaçant l'ancienne fois petit bijou « rails », « 3.1.0'
group :assets do
gem 'sass-rails', "~> 3.1.0"
gem 'coffee-rails', "~> 3.1.0"
gem 'uglifier'
end
Tout ce que vous devez faire est de lancer rake rails:update
vous pouvez également exécuter rake -T
pour voir une tâche de coupe fraîche que vous avez besoin
- 1. Tests: Mise à niveau vers Rails 3.0
- 2. Mise à niveau vers Rails 3.0
- 3. Mise à niveau vers les rails 3.1 cassé serveur rails, obtenir une erreur bizarre
- 4. Quand mettre à jour l'application de production vers Rails 3.1?
- 5. Mise à niveau de Rails 3.0.9 vers les erreurs Rails 3.1 de CanCan
- 6. Comment mettre à jour les rails 3.0.3 à 3.1?
- 7. ruby on rails 3.0 mise à niveau
- 8. rails-upgrade - mise à niveau d'une application rails2 vers rails3
- 9. Mise à jour vers Rails 3.1 échoue
- 10. Comment mettre à niveau des rails 3.2.11
- 11. Rails 3.1: répertoire alias/images vers/assets
- 12. mise à niveau des rails 2.3.5 applications à 3.0
- 13. Comment ajouter un moteur montable dans une application Rails 3.1?
- 14. Image non trouvée des erreurs après la mise à niveau vers Rails 3.1, comment réparer?
- 15. Migrer une application de 2.3.8 à 3.1
- 16. Problèmes de montages après la mise à niveau vers des rails 3.1
- 17. Rails 3.1 prototype-rails
- 18. Rails 2.x application sur RubyMine 3.1
- 19. Mise à niveau vers Rails 3.1 Dépannage du pipeline d'actifs problématique
- 20. Comment traduire des routes complexes de Rails 2.3 vers Rails 3.1?
- 21. Routage général vers Active Admin - Rails 3.1
- 22. méthode la plus sûre pour mettre à niveau l'application Rails de 3.0.3 à 3.0.XX (probablement 3.0.17)? pièges?
- 23. mise à niveau vers nhibernate 3.1
- 24. Comment utiliser une classe PHP dans mon application rails 3.1+?
- 25. Les dépendances ne se chargent pas correctement après la mise à niveau vers Rails 3.1
- 26. rails 3.1, bizarre find_template NameError
- 27. Rails générés aléatoirement Rails 3.1
- 28. Ressources d'image introuvables après la mise à niveau vers Rails 3.1
- 29. Rails 3.1 Routage
- 30. Comment mettre à niveau l'application rails de 2.3.5 à 2.3.9
Il serait sans doute une bonne idée de mettre à jour RVM à la dernière version: 'rvm get latest' ou en exécutant le script d'installation à nouveau si RVM est trop vieux, puis mettre à jour RubyGems:' gem update --system', puis mettre à jour bundler: 'gem install bundler' – Andrew
J'ai eu quelques conflits quand je J'ai couru 'bundle update rails' donc j'ai dû exécuter' bundle update' à la place – Andrew
En ce qui concerne le répertoire des assets , Je viens de créer une application 3.1 fictive et copié la structure du répertoire des actifs sur mon ancienne application – Andrew