Models role

This commit is contained in:
Виктор Гладких 2019-10-08 09:57:47 +03:00
parent cc51e36457
commit 7925febc77
3 changed files with 86 additions and 0 deletions

View File

@ -0,0 +1,47 @@
# Generated by Django 2.2.4 on 2019-10-08 06:54
from django.conf import settings
from django.db import migrations, models
import django.db.models.deletion
import django.utils.timezone
class Migration(migrations.Migration):
dependencies = [
('location', '0010_auto_20190904_0711'),
('account', '0008_auto_20190912_1325'),
]
operations = [
migrations.CreateModel(
name='Role',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('created', models.DateTimeField(default=django.utils.timezone.now, editable=False, verbose_name='Date created')),
('modified', models.DateTimeField(auto_now=True, verbose_name='Date updated')),
('role', models.CharField(choices=[(0, 'Guest'), (1, 'Standard user'), (2, 'Content page manager'), (3, 'Comments moderator')], max_length=250, verbose_name='Role')),
('is_list', models.BooleanField(default=True, verbose_name='list')),
('is_create', models.BooleanField(default=False, verbose_name='create')),
('is_update', models.BooleanField(default=False, verbose_name='update')),
('is_delete', models.BooleanField(default=False, verbose_name='delete')),
('country', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to='location.Country', verbose_name='Country')),
],
options={
'abstract': False,
},
),
migrations.CreateModel(
name='UserRole',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('created', models.DateTimeField(default=django.utils.timezone.now, editable=False, verbose_name='Date created')),
('modified', models.DateTimeField(auto_now=True, verbose_name='Date updated')),
('role', models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, to='account.Role', verbose_name='Role')),
('user', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL, verbose_name='User')),
],
options={
'abstract': False,
},
),
]

View File

@ -13,6 +13,7 @@ from django.utils.translation import ugettext_lazy as _
from rest_framework.authtoken.models import Token from rest_framework.authtoken.models import Token
from authorization.models import Application from authorization.models import Application
from location.models import Country
from utils.models import GMTokenGenerator from utils.models import GMTokenGenerator
from utils.models import ImageMixin, ProjectBaseMixin, PlatformMixin from utils.models import ImageMixin, ProjectBaseMixin, PlatformMixin
from utils.tokens import GMRefreshToken from utils.tokens import GMRefreshToken
@ -195,3 +196,24 @@ class User(AbstractUser):
return render_to_string( return render_to_string(
template_name=settings.CHANGE_EMAIL_TEMPLATE, template_name=settings.CHANGE_EMAIL_TEMPLATE,
context=context) context=context)
class Role(ProjectBaseMixin):
ROLE_CHOICES =(
(0, 'Guest'),
(1, 'Standard user'),
(2, 'Content page manager'),
(3, 'Comments moderator'),
)
role = models.CharField(verbose_name=_('Role'), max_length=250,
choices=ROLE_CHOICES, null=False, blank=False)
country = models.ForeignKey(Country, verbose_name=_('Country'), on_delete=models.CASCADE)
is_list = models.BooleanField(verbose_name=_('list'), default=True, null=False)
is_create = models.BooleanField(verbose_name=_('create'), default=False, null=False)
is_update = models.BooleanField(verbose_name=_('update'), default=False, null=False)
is_delete = models.BooleanField(verbose_name=_('delete'), default=False, null=False)
class UserRole(ProjectBaseMixin):
user = models.ForeignKey(User, verbose_name=_('User'), on_delete=models.CASCADE)
role = models.ForeignKey(Role, verbose_name=_('Role'), on_delete=models.SET_NULL, null=True)

View File

@ -0,0 +1,17 @@
# Generated by Django 2.2.4 on 2019-10-04 09:28
from django.db import migrations
class Migration(migrations.Migration):
dependencies = [
('timetable', '0002_auto_20190919_1124'),
]
operations = [
migrations.AlterModelOptions(
name='timetable',
options={'ordering': ['weekday'], 'verbose_name': 'Timetable', 'verbose_name_plural': 'Timetables'},
),
]