web-dev-qa-db-fra.com

Comment puis-je utiliser Bootstrap avec Django?

J'apprends python et Django venant de PHP. Tout cela est vraiment excitant, et j'aimerais utiliser Bootstrap = avec Django pour créer des pages Web sexy.

Si je comprends bien (je suis le tutoriel Django sur leur site Web), Django utilise des "applications" qui peuvent être incluses dans votre settings.py fichier. J'ai fait une recherche rapide et trouvé plusieurs applications sur le thème du bootstrap, mais je ne sais pas comment choisir la bonne. Existe-t-il une application standard que la plupart des gens utilisent? Tout ce dont j'ai besoin, c'est le bootstrap.css et bootstrap.js des dossiers.

Je suis sûr que je pourrais les placer manuellement dans ma racine, mais j'apprécierais une configuration "tout compris" dans mon Django installation.

58
n0pe

En relisant votre question, il semble que vous cherchiez un moyen d'installer Twitter Bootstrap comme une application Django. Bien qu'il existe des applications) qui facilitent l'utilisation de Twitter Bootstrap avec Django, vous n'avez pas vraiment besoin d'en utiliser aucun.

Vous pouvez simplement inclure les Twitter Bootstrap CSS et JS au niveau du projet ou de l'application et y faire référence dans vos modèles Django.

Pour inclure Twitter Bootstrap dans une application Django, votre meilleur pari est de:

  1. Utiliser des fichiers statiques

    Dans votre settings.py, ajoutez le chemin d'accès à Bootstrap (que vous devez télécharger et placer dans votre application Django sous un dossier nommé static):

    STATICFILES_DIRS = (
    
        # Put strings here, like "/home/html/static" or "C:/www/Django/static".
        # Always use forward slashes, even on Windows.
        # Don't forget to use absolute paths, not relative paths.
        '/path/to/my_project/my_app/static/',
    )
    

    Assurez-vous également que votre STATIC_URL le préfixe est défini:

    # URL prefix for static files.
    # Example: "http://media.lawrence.com/static/"
    STATIC_URL = '/static/'
    

    Maintenant, téléchargez Twitter Bootstrap et placez-le dans le chemin:

    /path/to/my_project/my_app/static/bootstrap/
    
  2. Inclure Twitter Bootstrap dans vos modèles

    Je lierais à Twitter Bootstrap, mais il n'y en a pas vraiment. Votre meilleur pari est de jeter un œil à la source de leur modèle de démarrage . Utilisation le système de modèles Django est un peu au-delà de la portée de cette question, mais je vais vous donner cette indication: n'importe où dans le modèle de démarrage où vous trouverez un lien vers un .css ou .js, remplacez-le par votre STATIC_URL.

    Alors:

    <link href="../assets/css/bootstrap.css" rel="stylesheet">
    

    devient

    <link href="{{ STATIC_URL }}/bootstrap/css/bootstrap.css" rel="stylesheet">
    

    J'utilise le modèle de démarrage comme base.html et inclure {% block content %} bloque dans base.html qui peut être remplacé par le contenu réel de mes modèles, qui {% extend base.html %}.

  3. Ou, utilisez une application tierce pour vous guider

    Vous pourriez enquêter sur le Django Bootstrap Toolkit , que je n'ai pas utilisé moi-même. Je suggérerais de le faire vous-même manuellement d'abord, cependant, comme un moyen d'explorer le projet et pour vraiment comprendre ce qui se passe. Ce n'est pas trop difficile du tout!

65
urbushey

Bienvenue dans le monde de Python/Django. Comme vous, après des années de développement web en PHP, j'ai migré vers la création de sites web dynamiques et d'applications web robustes à l'aide de cette paire langage/framework.

L'une des fonctionnalités vraiment sympa de Django est leur interface d'administration automatique. J'utilise une application appelée Django-Admin-Tools et Django-admintools-bootstrap qui transforme l'interface par défaut en un administrateur élégant. https://bitbucket.org/salvator/Django-admintools-bootstrap

La façon la plus simple d'installer des applications Django ou d'autres modules python est d'utiliser pip. Je voudrais lire sur l'utilisation de virtualenv http://readthedocs.org/projects/virtualenv/ pour gérer vos projets Django. Lorsque vous configurez un environnement virtuel python, il vous permet d'installer des applications Django et des modules python dans une installation python distincte sur votre système.

Ensuite, installer des applications Django supplémentaires est un jeu d'enfant - installer pip Django-admin-tools - Django grappelli - sud - sont tous quelques-uns de mes favoris.

4
Hacking Life

Et si vous installez simplement Twitter-bootstrap à l'aide de pip:

suivez les instructions:

https://pypi.python.org/pypi/Django-Twitter-bootstrap/

pour la configuration simple.

1
Syed Affan Aslam