################
Modèle de donnée
################

HDALab utilise le système `d'ORM de Django <https://docs.djangoproject.com/en/1.8/topics/db/models/>`_.

Le schéma suivant donne une vue synthétique des objets.

.. image:: _static/img/models/models_all.png
   :target: _static/img/models/models_all.png

Les paragraphes suivant détaillent la liste des objets utilisés par l'application Hdalab avec un lien vers leur documentation.

Modèles hdalab
==============

  - :class:`hdalab.models.categories.WpCategory`
  - :class:`hdalab.models.categories.TagWpCategory`
  - :class:`hdalab.models.categories.TagInfobox`
  - :class:`hdalab.models.categories.InfoboxParameter`
  - :class:`hdalab.models.categories.WpCategoryInclusion`
  - :class:`hdalab.models.dataviz.TagYears`
  - :class:`hdalab.models.dataviz.TagLinks`
  - :class:`hdalab.models.dataviz.Country`
  - :class:`hdalab.models.dataviz.GeoInclusion`
  - :class:`hdalab.models.dataviz.DbpediaFields`
  - :class:`hdalab.models.dataviz.DbpediaFieldsTranslation`
  - :class:`hdalab.models.dataviz.HdaSession`
  - :class:`hdalab.models.dataviz.InseeCoords`
  - :class:`hdalab.models.dataviz.DatasheetExtras`
  - :class:`hdalab.models.renkan.HdalabRenkan`
  - :class:`hdalab.models.renkan.HdalabRenkanStateTransition`


Modèles hdabo
=============

  - :class:`hdabo.models.User`
  - :class:`hdabo.models.Organisation`
  - :class:`hdabo.models.Author`
  - :class:`hdabo.models.TimePeriod`
  - :class:`hdabo.models.Domain`
  - :class:`hdabo.models.DocumentFormat`
  - :class:`hdabo.models.TagCategory`
  - :class:`hdabo.models.Tag`
  - :class:`hdabo.models.Location`
  - :class:`hdabo.models.Datasheet`
  - :class:`hdabo.models.TaggedSheet`
  - :class:`hdabo.models.Datasheet_domains`
  - :class:`hdabo.models.Datasheet_highschool_periods`
  - :class:`hdabo.models.Datasheet_highschool_themes`
  - :class:`hdabo.models.Datasheet_college_periods`
  - :class:`hdabo.models.Datasheet_college_themes`
  - :class:`hdabo.models.Datasheet_primary_periods`
  - :class:`hdabo.models.Datasheet_primary_themes`
  - :class:`hdabo.models.Folder`


Modèle renkan
=============

  - :ref:`renkanmanager.models.renkan <renkan-renkanmanager-models-renkan>`


Modèles externe
===============

  - `django.contrib.auth.models.Permission <https://docs.djangoproject.com/en/1.8/ref/contrib/auth/#permission>`_
  - `django.contrib.auth.models.Group <https://docs.djangoproject.com/en/1.8/ref/contrib/auth/#group>`_
  - `django.contrib.contenttypes.models.ContentType <https://docs.djangoproject.com/en/1.8/ref/contrib/contenttypes/#the-contenttype-model>`_
  - `django.contrib.sessions.models.Session <https://docs.djangoproject.com/en/1.8/topics/http/sessions/>`_
  - `django.contrib.sites.models.Site <https://docs.djangoproject.com/en/1.8/ref/contrib/sites/>`_
  - `registration.models.RegistrationProfile <http://django-registration.readthedocs.io/en/2.0.4/>`_
  - `easy_thumbnails.models.Source <https://easy-thumbnails.readthedocs.io/en/stable/>`_
  - `easy_thumbnails.models.Thumbnail <https://easy-thumbnails.readthedocs.io/en/stable/>`_
  - `easy_thumbnails.models.ThumbnailDimensions <https://easy-thumbnails.readthedocs.io/en/stable/>`_
