Skip to main content

Django third app for manage you models in command line environment.

Project description

https://travis-ci.org/ZuluPro/django-admin-cli.svg?branch=master https://coveralls.io/repos/ZuluPro/django-admin-cli/badge.svg?branch=master Code Health

Django third app for manage you models in command line environment.

Features

This app is based on Django Admin Site and ModelAdmin defined by developpers. It is supposed to allow user to make same things as in Admin site:

  • List model’s instance:

    • Filtering with Django’s Lookup

    • Choosing which field you want including ModelAdmin and Model attributes

    • Default display is the Admin one

  • Add an instance:

    • Prepopulate with default values

  • Update instances:

    • Filtering with Django’s Lookup

  • Delete instances:

    • Filtering with Django’s Lookup

  • Describe model and modeladmin

  • System user restriction (Read/Write)

  • Use admin actions (further)

Install

Install the package on your system:

pip install django-admin-cli

Add admin_cli to INSTALLED_APPS.

Usage

List model’s instance

$ ./manage.py cli user list
Username                      Email address                 First name                    Last name                     Staff status
zulu                                                                                                                    True
admin                                                                                                                   True

List specified fields

$ ./manage.py cli user list -f id -f username
Id                   Username
1                    zulu
2                    admin

Filter specified fields

$ ./manage.py cli user list -F id=1
Username                      Email address                 First name                    Last name                     Staff status
zulu                                                                                                                    True

Add an instance

$ ./manage.py cli site add -f domain=mysite.org -f 'name=My site'
Created 'mysite.org'

Update an instance

$ ./manage.py cli site update -F domain=mysite.org -f 'name=New name'
Update 'mysite.org' ? [Yes|No|All|Cancel] y
Updated 'mysite.org'

Delete an instance

$ ./manage.py cli site delete -F domain=mysite.org
Delete 'mysite.org' ? [Yes|No|All|Cancel] y
Deleted 'mysite.org'

Resctrict access to users

Put a dict named ADMIN_CLI_USERS in settings.py. It must have the following format:

ADMIN_CLI_USERS = {
  'login': 'RW',
}

Keys are UID or username, values are rights ‘R’ for read, ‘W’ for write/update/delete and ‘RW’ for both.

By default ADMIN_CLI_USERS is {} which allows all users to make all operations.

Testing

All tests are simply launched by:

python setup.py test

Online resources

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-admin-cli-0.1.1.tar.gz (11.2 kB view hashes)

Uploaded Source

Supported by

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