Skip to main content

Management command for commandline querying

Project description

Copyright (c) 2009-2012 Dennis Kaarsemaker <dennis@kaarsemaker.net> A command-line interface to query the Django ORM

Install:
  • python setup.py install

  • Add cli_query to the INSTALLED_APPLICATIONS setting in your settings.py

Usage: cd your_project_dir; ./manage.py query [options] [filters]

The django ORM will be queried with the filters on the commandline. Records will be separated with newlines, fields with the specified separator (the default is a comma). Alternatively, a template can be specified which will be passed the result of the query as the ‘objects’ variable

Query key/value pairs can be prefixed with a ‘!’ or ‘~’ to negate the query. The __in filter works, use a comma separated string of arguments

You can also update fields using -u field=value. For every changed object, you will be prompted to approve the changes.

Examples:
  • Display name and assettag of all mc01 servers %prog query -a servers -m Server name__startswith=mc01 -f name,assettag

  • Get a list of name, ip, mac for all servers where the does not contain .82. %prog query -a servers -m Interface !ip_address__contains=’.82.’ -f server.name,ip_address,mac_address

  • Use a template to get the roles, depending on mac address %prog query -a servers -m Server interface__mac_address=00:17:A4:8D:E6:BC -t ‘{{ objects.0.role_set.all|join:”,” }}’

  • List all eth0/eth1 network interfaces %prog query -a servers -m Interface name__in=eth0,eth1 -f ip_address,mac_address

  • Update the state of all mc2* servers $prog query -a servers -m Server name__startswith=mc2 -u status=live

Operators you can filter with are listed on see https://docs.djangoproject.com/en/dev/ref/models/querysets/#field-lookups

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

django-cli-query-1.2.tar.gz (4.3 kB view details)

Uploaded Source

File details

Details for the file django-cli-query-1.2.tar.gz.

File metadata

File hashes

Hashes for django-cli-query-1.2.tar.gz
Algorithm Hash digest
SHA256 71f6cd987fc87f4f825dc9ee6284997daf51dbbb852387f28c0e46067f2ff234
MD5 6e8b1ca7da2f855f33e9d8e6a67b2e26
BLAKE2b-256 56a63b2b5293011e0757a3f6a92db5f2eca9b4ad1b287f15f9445d327683c6f3

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page