src/notes/models/core.py
author ymh <ymh.work@gmail.com>
Wed, 14 Jun 2017 15:17:51 +0200
changeset 31 63be3ce389f7
parent 24 3b3999550508
child 71 75dc1e794cf4
permissions -rw-r--r--
improve api
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
irinotes core module
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 django.conf import settings
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
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
class Session(Model):
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    12
    class Meta:
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    13
        verbose_name = _('Session')
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    14
        verbose_name_plural = _('Sessions')
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    15
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    16
    owner = models.ForeignKey(
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    17
        settings.AUTH_USER_MODEL,
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    18
        on_delete=models.CASCADE,
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    19
    )
31
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
    20
    title = models.TextField(
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
    21
        null=True,
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
    22
        blank=True,
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
    23
        verbose_name=_('Session|title')
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
    24
    )
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
    25
    description = models.TextField(
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
    26
        null=True,
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
    27
        blank=True,
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
    28
        verbose_name=_('Session|description')
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
    29
    )
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
    30
    protocol = models.TextField(
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
    31
        null=True,
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
    32
        blank=True,
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
    33
        verbose_name=_('Session|protocol')
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
    34
    )
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
    35
24
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    36
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    37
class Note(Model):
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    38
    class Meta:
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    39
        verbose_name = _('Note')
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    40
        verbose_name_plural = _('Notes')
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    41
        ordering = ["tc_start"]
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    42
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    43
    tc_start = models.DateTimeField(verbose_name=_('Note|tc_start'))
3b3999550508 first data model for backend
ymh <ymh.work@gmail.com>
parents:
diff changeset
    44
    tc_end = models.DateTimeField(verbose_name=_('Note|tc_end'))
31
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
    45
    session = models.ForeignKey(
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
    46
        Session,
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
    47
        on_delete=models.CASCADE,
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
    48
        related_name='notes',
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
    49
        verbose_name=_('Note|session')
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
    50
    )
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
    51
    plain = models.TextField(
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
    52
        null=True,
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
    53
        blank=True,
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
    54
        verbose_name=_('Note|plain')
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
    55
    )
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
    56
    html = models.TextField(
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
    57
        null=True,
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
    58
        blank=True,
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
    59
        verbose_name=_('Note|html')
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
    60
    )
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
    61
    raw = models.TextField(
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
    62
        null=True,
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
    63
        blank=True,
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
    64
        verbose_name=_('Note|raw')
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
    65
    )
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
    66
    margin_note = models.TextField(
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
    67
        null=True,
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
    68
        blank=True,
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
    69
        verbose_name=_('Note|margin_note')
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
    70
    )
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
    71
    categorization = models.TextField(
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
    72
        null=True,
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
    73
        blank=True,
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
    74
        verbose_name=_('Note|categorization')
63be3ce389f7 improve api
ymh <ymh.work@gmail.com>
parents: 24
diff changeset
    75
    )