Metadata-Version: 2.1
Name: django-etc
Version: 1.2.0
Summary: Tiny stuff for Django that won't fit into separate apps.
Home-page: https://github.com/idlesign/django-etc
Author: Igor `idle sign` Starikov
Author-email: idlesign@yandex.ru
License: BSD 3-Clause License
Classifier: Development Status :: 5 - Production/Stable
Classifier: Environment :: Web Environment
Classifier: Framework :: Django
Classifier: Intended Audience :: Developers
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: License :: OSI Approved :: BSD License
License-File: LICENSE
License-File: AUTHORS

django-etc
==========
https://github.com/idlesign/django-etc

.. image:: https://idlesign.github.io/lbc/py2-lbc.svg
   :target: https://idlesign.github.io/lbc/
   :alt: LBC Python 2

----

.. image:: https://img.shields.io/pypi/v/django-etc.svg
    :target: https://pypi.python.org/pypi/django-etc

.. image:: https://img.shields.io/pypi/l/django-etc.svg
    :target: https://pypi.python.org/pypi/django-etc

.. image:: https://img.shields.io/coveralls/idlesign/django-etc/master.svg
    :target: https://coveralls.io/r/idlesign/django-etc

.. image:: https://img.shields.io/travis/idlesign/django-etc/master.svg
    :target: https://travis-ci.org/idlesign/django-etc


Description
-----------

*Tiny stuff for Django that won't fit into separate apps.*


Utils
~~~~~

* **etc.toolbox.get_site_url** does its best to provide you with a site URL whether request object is unavailable or not.

* **etc.toolbox.import_app_module** imports and returns a module from a specific app by its name.

* **etc.toolbox.import_project_modules** imports modules from registered apps using given module name and returns them as a list.


Models
~~~~~~

* **etc.toolbox.InheritedModel** allows to override fields attributes in inherited models.

* **etc.toolbox.get_model_class_from_string** allows getting model class from its string representation.

* **etc.toolbox.get_model_class_from_settings** allows getting model class from its string representation in settings module.

* **etc.toolbox.ChoicesEnumMixin** helps to define choices for models using ``Enum`` from Python 3.

* **etc.toolbox.choices_list** helps to define choices for models, that could be addressed later as dictionaries.

* **etc.toolbox.get_choices** returns model field choices from a given choices list.


Forms
~~~~~

* **etc.toolbox.set_form_widgets_attrs** allows bulk apply HTML attributes to every field widget of a given form.


Template tags
~~~~~~~~~~~~~

* `model_field`:

  * **model_field_verbose_name** returns model field verbose name.

  * **model_field_help_text** returns model field help text.

* `model_meta`:

  * **model_meta_verbose_name** returns model verbose name singular.

  * **model_meta_verbose_name_plural** returns model verbose name plural.

* `gravatar`

  * **gravatar_get_url** returns Gravatar image URL for a given string or UserModel.

  * **gravatar_get_img** returns Gravatar image HTML tag for a given string or UserModel.

* `etc_misc`

  * **site_url** does its best to provide you with a site URL whether request object is unavailable or not.

  * **include_** allows a template name to include template variables. Allows fallback template if the target is not found.



Documentation
-------------

http://django-etc.readthedocs.org/
