permissions per page and add dam.rasadyar.com in allowed hosts

This commit is contained in:
2025-05-31 16:40:23 +03:30
parent 821a33d0f6
commit 1f6854a6dc
6 changed files with 133 additions and 3 deletions

View File

@@ -5,9 +5,42 @@ from apps.core.models import BaseModel
# Create your models here.
class Page(BaseModel):
""" every front-end page on system """
code = models.CharField(max_length=100, unique=True)
name = models.CharField(max_length=255)
def __str__(self):
return f'{self.name}-{self.code}'
def save(self, *args, **kwargs):
super(Page, self).save(*args, **kwargs)
class Permissions(BaseModel):
""" permission level of users """
name = models.CharField(max_length=50)
description = models.TextField(max_length=500)
category_choices = (
('api', 'Api'),
('page', 'Page َAccess'),
('element', 'UI Element'),
('feature', 'Feature / Action')
)
category = models.CharField(
max_length=50,
choices=category_choices,
default='api'
)
meta = models.JSONField(default=dict)
page = models.ForeignKey(
Page,
on_delete=models.CASCADE,
related_name='permission_page',
null=True
)
def __str__(self):
return f'{self.name}-{self.description}'