django-cli-query is een command-line interface op te vragen van de Django ORM.
Installeren:
& Nbsp; - python setup.py installeren
& Nbsp; - cli_query Toevoegen aan de INSTALLED_APPLICATIONS instelling in uw settings.py
Gebruik: cd your_project_dir; ./manage.py vraag [opties] [filters]
De Django ORM zal worden opgevraagd met de filters aan de commandline. Archief
zal met de nieuwe regels worden gescheiden, velden met de opgegeven afscheider
(De standaardinstelling is een komma). Als alternatief kan een sjabloon worden gespecificeerd welke
het resultaat van de zoekopdracht worden doorgegeven als de variabele "objecten"
Query-sleutel / waarde paren kan worden voorafgegaan door een '!' of "~" aan de query ontkennen.
De __in filter werkt, gebruik dan een door komma's gescheiden reeks van argumenten
Voorbeelden:
& Nbsp; - Toon naam en assettag van alle MC01 servers
& Nbsp; & nbsp; ./manage.py vraag -a servers -m Server name__startswith = MC01 -f naam, assettag
& Nbsp; - krijg je een lijst met naam, ip, mac voor alle servers waar het niet .82 bevatten.
& Nbsp; & nbsp; ./manage.py vraag -a servers -m Interface! ip_address__contains = '. 82.' -f server.name, ip_address, mac_address
& Nbsp; - Gebruik een sjabloon om de rollen te krijgen, afhankelijk van de mac-adres
& Nbsp; & nbsp; ./manage.py vraag -a servers -m Server interface__mac_address = 00: 17: A4: 8D: E6: BC -t '{{objects.0.role_set.all | join: ","}}'
& Nbsp; - een lijst van alle eth0 / eth1 netwerkinterfaces
& Nbsp; & nbsp; ./manage.py vraag -a servers -m Interface name__in = eth0, eth1 -f ip_address, mac_address
& Nbsp; - Werk de status van veel servers tegelijk
& Nbsp; & nbsp; ./manage.py vraag -a servers -m Server name__contains = builder- -u status = spare
Eisen
- Python
- Django
Reacties niet gevonden