src/notes/models/category.py
author ymh <ymh.work@gmail.com>
Thu, 03 Aug 2017 09:44:37 +0200
changeset 133 6f3078f7fd47
parent 31 63be3ce389f7
permissions -rw-r--r--
Work on correct protocol propagation
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
24
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
     1
"""
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
     2
models for metacategories and protocol
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
     3
"""
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
     4
from colorful.fields import RGBColorField
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
     5
from django.db import models
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
     6
from django.utils.translation import ugettext_lazy as _
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
     7
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
     8
from .base import Model
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
     9
from .auth import GroupProfile
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    10
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    11
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    12
class Protocol(Model):
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    13
    title = models.CharField(max_length=255, verbose_name=_('Protocol|title'))
133
6f3078f7fd47 Work on correct protocol propagation
ymh <ymh.work@gmail.com>
parents: 31
diff changeset
    14
    # group_profile = models.OneToOneField(
6f3078f7fd47 Work on correct protocol propagation
ymh <ymh.work@gmail.com>
parents: 31
diff changeset
    15
    #     GroupProfile, on_delete=models.CASCADE)
31
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
    16
24
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    17
    class Meta:
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    18
        verbose_name = _('Protocol')
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    19
        verbose_name_plural = _('Protocols')
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    20
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    21
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    22
class Category(models.Model):
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    23
    title = models.CharField(max_length=255, verbose_name=_('Category|title'))
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    24
    color = RGBColorField(verbose_name=_('Category|color'))
31
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
    25
    need_comment = models.BooleanField(
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
    26
        default=False,
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
    27
        verbose_name=_('Category|need_comment')
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
    28
    )
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
    29
    description = models.TextField(
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
    30
        null=True,
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
    31
        blank=True,
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
    32
        verbose_name=_('Category|description')
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
    33
    )
24
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    34
    protocol = models.ForeignKey(
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    35
        Protocol,
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    36
        verbose_name=_('Category|protocol'),
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    37
        related_name='categories',
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    38
        on_delete=models.CASCADE
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    39
    )
31
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
    40
24
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    41
    class Meta:
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    42
        verbose_name = _('Category')
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    43
        verbose_name_plural = _('Categories')