Question

Je l'ai vu que certains Rails CMSes (comme Radiant) ont des plugins qui compilent essentiellement Sass lorsqu'une page est accessible. Est-il possible de le faire dans une application régulière des rails? Une telle démarche est performant? Au fond, je suis à la recherche d'un moyen de supprimer l'étape supplémentaire de course Compass pour compiler mes feuilles de style.

Était-ce utile?

La solution

Je n'ai pas utilisé la boussole en particulier, mais il semble qu'il y ait un drapeau de production si les fichiers sont compilés - je ne pouvais pas imaginer qu'ils avaient construire à recompiler par demande, dans la production, Radiant compile de css au démarrage de l'application et si vous puis valider les fichiers CSS générés, il ne cherche pas à les générer à nouveau AFAIK.

http://compass-style.org/docs/tutorials/production-css /

Autres conseils

Sass et Compass intègrent automatiquement avec Rails. Si vous utilisez Rails 3, tout ce que vous avez à faire est d'ajouter à votre gem "haml" Gemfile et tous les fichiers .sass et .scss dans public/stylesheets/sass va obtenir compilé des fichiers .css dans public/stylesheets.

Compile par demande? Je pense que ce pourrait être un succès pour la performance. Vous devez absolument utiliser une stratégie de mise en cache dans ce cas. Alors qu'il compile la feuille de style que si elle est pas dans le cache.

Vous pouvez créer une méthode d'assistance setup_stylesheet qui prendra soin de mettre en place la feuille de style css. Vous appelez cette méthode sur la mise en application.

setup_stylesheet va vérifier si la feuille de style css est sur le cache, et si elle est là, utilisez-le. Dans le cas contraire, puis le compiler.

Une autre approche:

Vous pouvez configurer un appel qui initialiseur Compass pour compiler vos feuilles de style SASS lorsque l'application est lancée.

  • va si performant?

Il y aura une performance énorme hit lors de la compilation lors de l'exécution.

NEX3 (auteur de joyau Sass de ) a sur un autre forum, il n'y a pas besoin besoin de courir compass watch.

Je vous conseille fortement de mettre ce qui suit dans production.rb: Sass::Plugin.options[:never_update] = true - ceci est particulièrement important si vous êtes sur Heroku. (Vous pouvez aussi le faire dans votre fichier rack, où vous pouvez également spécifier autres options

Hmm, bonne chance

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top