Model inspection for Django
Project description
Django-inspect-model
Authors: Mathieu Agopian and contributors
Licence: BSD
Compatibility: Python 2.6, Python 2.7, Python 3.3, Python 3.4, Django 1.3+
Requirements: none
Project URL: https://github.com/magopian/django-inspect-model/
Documentation: http://django-inspect-model.readthedocs.org/en/latest/
Django-inspect-model is a model inspection utility for Django. It allows you to easily list all available “items” on a model, and get their value.
An item is either:
a django field (standard field or relation field)
a standard attribute
a method that only takes one attribute: ‘self’
a property
The code is generic enough to be applied on just any python object, so Django isn’t a requirement. However, it was tailored towards Django models.
Install
Using pip:
pip install django-inspect-model
Usage
Instantiate inspect_model.InspectModel with your model class or instance, and profit.
>>> from django.contrib.comments.models import Comment >>> from inspect_model import InspectModel >>> im = InspectModel(Comment) >>> im.fields ['comment', 'id', 'ip_address', 'is_public', 'is_removed', 'object_pk', 'submit_date', 'user_email', 'user_name', 'user_url'] >>> im.relation_fields ['content_type', 'site', 'user'] >>> im.many_fields ['flags'] >>> im.attributes [] >>> im.methods ['get_as_text', 'get_content_object_url'] >>> im.properties ['email', 'name', 'pk', 'url', 'userinfo'] >>> im.items ['comment', 'content_type', 'email', 'flags', 'get_as_text', 'get_content_object_url', u'id', 'ip_address', 'is_public', 'is_removed', 'name', 'object_pk', 'pk', 'site', 'submit_date', 'url', 'user', 'user_email', 'user_name', 'user_url', 'userinfo']
Hacking
Setup your environment:
git clone https://github.com/magopian/django-inspect-model.git cd django-inspect-model
Hack and run the tests using Tox to test on all the supported python and Django versions:
make test
To build the docs:
make docs
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
Built Distribution
File details
Details for the file django-inspect-model-0.7.tar.gz
.
File metadata
- Download URL: django-inspect-model-0.7.tar.gz
- Upload date:
- Size: 6.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | c33947603694fe75402f4545ba1aec5bd2dfcd76c9c005841226a782309c65b6 |
|
MD5 | 02823c32ba10c9ceb1206c7c3f772a42 |
|
BLAKE2b-256 | 74d40900605275f7450d98b5c10efdcd7eace8ead65ab1f593d0183c3718ca65 |
File details
Details for the file django_inspect_model-0.7-py2.py3-none-any.whl
.
File metadata
- Download URL: django_inspect_model-0.7-py2.py3-none-any.whl
- Upload date:
- Size: 8.3 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | feeb6d38cdd22ef268b074819da94209330fd0e7aa543ff94be9035c7e2230fd |
|
MD5 | 3aa8e1ab83f141bd7e8ef2891b10f0e2 |
|
BLAKE2b-256 | f13f1c5e2d15d4d16973aa055fea95bb0c9e29327f976196b13afc7c21350672 |