django-boss

Software screenshot:
django-boss
Software informatie:
Versie: 0.6.3
Upload datum: 12 May 15
Ontwikkelaar: Zachary Voase
Licentie: Gratis
Populariteit: 2

Rating: nan/5 (Total Votes: 0)

Django-baas is een implementatie van de ideeën uiteengezet in mijn blog post op Django beheer commando's. Met het, kunt u opdrachten in individuele apps te geven en dan lopen ze met behulp van de djboss command-line interface.
Het installeren van Django-baas
Op dit moment wordt de installatie gebeurt via easy_install django-baas of pip installeren Django-baas. De enige vereisten zijn argparse, waarvan de installatie wordt afgehandeld door setuptools en Django, die moet je geïnstalleerd hebt nu toch.
Writing Commando
Commando's worden gedefinieerd als gevallen van djboss.commands.Command, aanwezig in een commando submodule in een geïnstalleerde app. Neem bijvoorbeeld de volgende app layout:
echoapp /
| - __init__.py
| - Commands.py
`- Models.py
De commands.py bestand is een submodule die als echoapp.commands kunnen worden geïmporteerd.
Met decorateurs
Het volgende is een compleet voorbeeld van een geldig commands.py bestand:
van djboss.commands importeren *
Command
def hello (args):
& Nbsp; "" "Druk een cliche aan de console." ""
& Nbsp; print "Hello, World!"
Dit voorbeeld gebruikt deCommand decorateur te verklaren dat de functie is een Django-boss commando. U kunt argumenten toevoegen aan commando's ook; gewoon gebruik maken van deargument decorateur (zorg ervoor dat ze komen na deCommand):
Command
argument ('- n', '--no-newline', action = 'store_true',
& Nbsp; help = "Niet voegen een trailing nieuwe regel.")
def hello (args):
& Nbsp; "" "Druk een cliche aan de console." ""
& Nbsp; Als args.no_newline:
& Nbsp; import sys
& Nbsp; sys.stdout.write ("Hello World")
& Nbsp; anders:
& Nbsp; print "Hello, World!"
Deargument decorateur aanvaardt wat argparse.ArgumentParser.add_argument () doet; Raadpleeg de argparse documentatie voor meer informatie.
U kunt ook commando's annoteren door het geven van trefwoord argumentenCommand:
Command (name = "iets", description = "Is er iets.")
def do_something (args):
& Nbsp; "" ". Doe iets" ""
& Nbsp; print "iets is gedaan."
In dit geval zal het commando "iets" in plaats van de automatisch gegenereerde "doe-iets" genoemd, en de beschrijving ervan verschilt van het docstring. Voor meer informatie over wat kan worden doorgegeven in hier, raadpleeg de argparse.ArgumentParser docs.
Zonder decorateurs
De API is zeer vergelijkbaar zonder decorateurs. De Command klasse wordt gebruikt om functies te wikkelen, en u kunt trefwoord argumenten te geven wanneer een beroep op het als metCommand:
def echo (args):
& Nbsp; ...
echo = Command (echo, naam = '...', description = '...')
Het toevoegen van argumenten gebruikt de Command.add_argument (methode), dat is gewoon een verwijzing naar de gegenereerde sub-parser & rsquo; s add_argument (methode):
def echo (args):
& Nbsp; ...
echo = Command (echo, naam = '...', description = '...')
echo.add_argument ('- n', '--no-newline', ...)
echo.add_argument ('woorden', nargs = '*')
Running Commando
Commando's worden uitgevoerd via de djboss command-line interface. Om deze te kunnen draaien, een van twee dingen nodig:
* Een DJANGO_SETTINGS_MODULE omgeving variabele die verwijst naar een geldige, importeerbare Python module.
* Een geldig, importeerbare instellingen module in de huidige werkmap.
Zodra een van die wordt gedekt, kunt u het uit te voeren:
djboss --help
verbruik: djboss [h] [-v] [-l LEVEL] COMMANDO ...
Run django-baas beheer commando's.
optionele argumenten:
& Nbsp; -h, --help deze hulp bericht en afrit tonen
& Nbsp; -v, --version showprogramma's versienummer en exit
& Nbsp; l LEVEL, --log niveau LEVEL
& Nbsp; Kies een log niveau van DEBUG, INFO, WARN (standaard)
& Nbsp; of FOUT.
commando:
& Nbsp; BEVEL
& Nbsp; echo Echo de argumenten terug naar de console.
& Nbsp; hello Druk een cliche aan de console.
Om sub-commando's, djboss eerste vondsten en de invoer van uw Django instellingen te ontdekken.
De DJANGO_SETTINGS_MODULE omgevingsvariabele heeft voorrang, maar als niet-gespecificeerde, zal djboss zoek naar een `settings` module in de huidige directory. Commando's moeten worden vastgelegd in een `commands` submodule van elke app. djboss zal elk van uw INSTALLED_APPS zoeken voor het management opdrachten.
Elk subopdracht krijgt een --help optie ook:
djboss echo --help
verbruik: djboss echo [h] [-n] [woorden [woorden ...]]
Echo van de argumenten terug naar de console.
positionele argumenten:
& Nbsp; woorden
optionele argumenten:
& Nbsp; -h, --help deze hulp bericht en afrit tonen
& Nbsp; -n, --no-nieuwe regel niet een nieuwe regel daarna af te drukken.
En dan kun je het uit te voeren:
djboss hier echo sommige woorden
sommige woorden hier
Meer van hetzelfde:
djboss hello --help
verbruik: djboss hello [h]
Druk een cliche aan de console.
optionele argumenten:
& Nbsp; -h, --help deze hulp bericht en afrit tonen
En tenslotte:
djboss hello
Hallo, Wereld

Eisen

  • Django
  • Python

Andere software van ontwikkelaar Zachary Voase

Dagny
Dagny

20 Feb 15

django-qmethod
django-qmethod

14 Apr 15

Markdoc
Markdoc

21 Jul 15

Reacties op django-boss

Reacties niet gevonden
Commentaar toe te voegen
Zet op de beelden!