Basé sur djangorecipe, la recette djbuild détachable peut être utilisé pour créer une configuration de Django. & Nbsp; Il va automatiquement télécharger Django et l'installer dans le sandbox de l'buildout. Vous pouvez utiliser une version de Django ou une caisse de subversion (en utilisant le tronc à la place d'un numéro de version).
La structure du répertoire est basé sur: http://django.es/blog/convenciones-proyecto-django/
Vous pouvez voir un exemple de la façon d'utiliser la recette ci-dessous:
[Buildout]
pièces = satchmo django
oeufs = ipython
[Satchmo]
recette = gocept.download
url = http://www.satchmoproject.com/snapshots/satchmo-0.6.tar.gz
md5sum = 659a4845c1c731be5cfe29bfcc5d14b1
[Django]
recette = djbuild
version = tronc
paramètres = développement
oeufs = $ {buildout: oeufs}
extra-chemins =
& Nbsp; $ {satchmo: location}
projet = dummyshop
Les options supportées
La recette prend en charge les options suivantes.
projet
& Nbsp; Cette option définit le nom de votre projet. La recette va créer une structure de base si le projet n'y est pas déjà.
externes-apps
& Nbsp; Cette option définit le répertoire où les applications externes réutilisables va. Qui ne pas être installé comme un œuf ou si vous ne voulez pas l'installer comme un œuf.
locales-apps
& Nbsp; Cette option définit le répertoire où les applications réutilisables locales va, mettez habituellement le nom de la société pour ce répertoire, et les applications personnalisées.
projectegg
& Nbsp; Utiliser à la place de l'option de projet lorsque vous souhaitez utiliser un œuf que le projet. Cela désactive la génération de la structure du projet.
python
& Nbsp; Cette option peut être utilisée pour spécifier une version spécifique de Python qui peut être une version différente de celle utilisée pour exécuter le buildout.
version
& Nbsp; L'argument de version peut accepter quelques types d'arguments différents. Vous pouvez spécifier tronc. Dans ce cas, il va faire une extraction du tronc Django. Une autre option est de spécifier un numéro de version comme 0.96.2. Ceci va télécharger l'archive de presse. Enfin, vous pouvez spécifier une URL svn complète (y compris le numéro de révision). Un exemple de ceci serait http://code.djangoproject.com/svn/django/branches/newforms-admin@7833.
paramètres
& Nbsp; Vous pouvez définir le nom du fichier de paramètres qui doit être utilisé avec cette option. Ceci est utile si vous voulez avoir une installation à partir de votre installation de développement de production différent. Il est par défaut au développement.
download-cache
& Nbsp; Définir à un dossier quelque part sur votre système pour accélérer l'installation. La recette va utiliser ce dossier comme un cache pour une version téléchargée de Django.
extra-chemins
& Nbsp; Tous les chemins spécifiés ici seront utilisés pour étendre le chemin par défaut de Python pour les bin / * scripts.
PTH-fichiers
& Nbsp; Ajoute chemins trouvés sur un site .pth fichier pour les extra-chemins. Utile pour des choses comme Pinax qui maintient son propre external_libs dir.
commande script
& Nbsp; Le nom du script créé dans le dossier bin. Ce script est l'équivalent de la manage.py Django crée normalement. Par défaut, il utilise le nom de la section (la partie entre le []).
test
& Nbsp; Si vous voulez un script dans le dossier bin pour exécuter tous les tests pour un ensemble spécifique d'applications ceci est l'option que vous souhaitez utiliser. Définir à la liste des étiquettes d'applications que vous souhaitez tester.
TestRunner
& Nbsp; Ceci est le nom de la TestRunner qui sera créé. Ce défaut de tester.
Toutes les options suivantes ont effet que lorsque le projet spécifié par l'option de projet n'a pas déjà été créé, sur le fichier de réglage especified.
Paramètres spécifiques FCGI
Options pour FCGI peuvent être définis dans un fichier de paramètres (de settings.py). Les options sont FCGI_OPTIONS. Il doit être réglé à un dictionnaire. La partie ci-dessous est un exemple:
FCGI_OPTIONS = {
& Nbsp; «méthode»: 'threaded',
& Nbsp; »daemonize ':« faux »,
}
Un autre exemple
L'exemple suivant vous montre comment utiliser encore plus d'options:
[Buildout]
pièces = extras django
eggs =
& Nbsp; hashlib
[Extras]
recette = iw.recipe.subversion
urls =
& nbsp; http: //django-command-extensions.googlecode.com/svn/trunk/ django-commande-extensions
& Nbsp; http: //django-mptt.googlecode.com/svn/trunk/ django-MPTT
[Django]
recette = djbuild
version = tronc
paramètres = développement
projet = exampleproject
wsgi = true
eggs =
& nbsp; $ {buildout: oeufs}
test =
& Nbsp; someapp
& Nbsp; anotherapp
Exemple d'utilisation .pth fichiers
Pinax utilise un fichier .pth d'ajouter un tas de bibliothèques à son passage; nous pouvons spécifier qu'il est répertoire pour obtenir les bibliothèques Il a précisé ajouté à notre chemin:
[Buildout]
pièces = PIL
& Nbsp; svncode
& Nbsp; myproject
[PIL]
recette = zc.recipe.egg: personnalisé
oeuf = PIL
trouver des liens = http://dist.repoze.org/
[Svncode]
recette = iw.recipe.subversion
urls = http://svn.pinaxproject.com/pinax/tags/0.5.1rc1 pinax
[Mon projet]
recette = djbuild
version = 1.0.2
oeufs = PIL
= projet myproject
settings = paramètres
extra-chemins = $ {buildout: répertoire} / myproject / apps
& Nbsp; $ {svncode: location} / Pinax / apps / external_apps
& Nbsp; $ {svncode: location} / Pinax / apps / LOCAL_APPS
PTH-files = $ {svncode: emplacement} / pinax / libs / external_libs
wsgi = true
Ci-dessus, nous utilisons de stock Pinax pour PTH-fichiers et extra-chemins chemins pour les applications, et notre propre projet pour le chemin qui sera trouvé en premier dans la liste. Notez que nous prévoyons que notre projet soit vérifié (par exemple, par svn: externe) directement sous ce répertoire pour 'myproject'.
Exemple avec une version différente de Python
Pour utiliser une version différente de Python à partir de celui qui a couru buildout dans l'utilisation de script généré quelque chose comme:
[Buildout]
pièces = myproject
[Spéciale-python]
exécutable = / some / spécial / python
[Mon projet]
recette = djbuild
version = 1.0.2
= projet myproject
python = spéciale-python
Exemple de configuration pour mod_wsgi
Si vous souhaitez déployer un projet en utilisant mod_wsgi vous pouvez utiliser cet exemple comme un point de départ:
& Nbsp; Ordre deny, allow
& Nbsp; Allow from all
& Nbsp; ServerName my.rocking.server
& Nbsp; CustomLog /var/log/apache2/my.rocking.server/access.log combiné
& Nbsp; ErrorLog /var/log/apache2/my.rocking.server/error.log
& Nbsp; WSGIScriptAlias / /path/to/buildout/bin/django.wsgi
Exigences :
- Python
Commentaires non trouvées