Working v0

This commit is contained in:
2024-09-27 18:09:38 +02:00
parent f3116a6876
commit 8dfafa9404
25 changed files with 740 additions and 389 deletions
+1 -5
View File
@@ -4,8 +4,8 @@ def header_for_table(model):
return [
{
"text": value,
"value": key,
**value,
}
for key, value in headers.items()
] + [
@@ -15,7 +15,3 @@ def header_for_table(model):
"sortable": False,
},
]
def encrypted_fields(model):
return model.Encryption.fields
+11 -12
View File
@@ -1,10 +1,10 @@
from django.conf import settings
from django.apps import apps
from users.models import UserSettings
from pathlib import Path
from django.apps import apps
from django.conf import settings
from rich import print
from users.models import UserSettings
def extra_context(request):
@@ -21,17 +21,16 @@ def extra_context(request):
for path in p.iterdir():
components.append(path.name)
return {
ret = {
"user_settings": user_settings,
"templates": {
component: f"components/{component}/template.html"
for component in components
},
"components": {
component: {
"path": f"components/{component}/vue.js",
"flat_name": component.replace("-", "_").lower(),
}
for component in components
}
component: f"components/{component}/vue.js" for component in components
},
}
print(ret)
return ret
+33 -4
View File
@@ -11,15 +11,44 @@ class BaseQuerySet(models.QuerySet):
def headers(self):
"""Return the list of header for a list."""
def _field(field):
ret = {
field.name: {
"text": field.verbose_name.capitalize(),
"align": "",
"encrypted": field.name in self.model.Encryption.fields,
"editable": field.name
not in self.model.Serialization.excluded_fields_edit,
"field_widget": "v-textarea",
}
}
if isinstance(field, RelatedField):
ret[f"{field.name}__name"] = {
"text": f"{field.verbose_name.capitalize()} - Name",
"align": "",
"encrypted": True,
}
ret[f"{field.name}__name"] = {
"text": f"{field.verbose_name.capitalize()} - Identifier",
"align": "",
"encrypted": True,
}
ret[field.name].update(
align=" d-none",
testing=123,
field_widget="v-select",
)
return ret
fields = {}
for field in self.model._meta.fields:
if field.name in self.model.Serialization.excluded_fields:
continue
# if isinstance(field, RelatedField):
# fields[f"{field.name}__name"] = field.verbose_name.capitalize()
fields[field.name] = field.verbose_name.capitalize()
fields.update(_field(field))
return fields