Skip to content

Commit

Permalink
admin improvements 3 (#1830)
Browse files Browse the repository at this point in the history
  • Loading branch information
george-silva authored Oct 22, 2024
1 parent e9f1238 commit e4207d8
Show file tree
Hide file tree
Showing 7 changed files with 52 additions and 6 deletions.
18 changes: 14 additions & 4 deletions poetry.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

1 change: 1 addition & 0 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -61,6 +61,7 @@ whitenoise = "^6.7.0"
djangorestframework-types = "^0.8.0"
toml = "^0.10.2"
rio-cogeo = "^5.3.6"
django-json-widget = "^2.0.1"

[tool.poetry.group.dev.dependencies]
colorama = "^0.4.6"
Expand Down
3 changes: 2 additions & 1 deletion src/planscape/datasets/admin.py
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
from typing import Any, Dict
from django.contrib import admin
from datasets.forms import DatasetAdminForm, CategoryAdminForm
from datasets.forms import DataLayerAdminForm, DatasetAdminForm, CategoryAdminForm
from datasets.models import Category, DataLayer, Dataset
from treebeard.admin import TreeAdmin
from treebeard.forms import movenodeform_factory
Expand Down Expand Up @@ -31,6 +31,7 @@ def get_changeform_initial_data(self, request) -> Dict[str, Any]:


class DataLayerAdmin(admin.ModelAdmin):
form = DataLayerAdminForm
search_fields = [
"organization__name__icontains",
"dataset__name__icontains",
Expand Down
33 changes: 32 additions & 1 deletion src/planscape/datasets/forms.py
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
from django import forms

from datasets.models import Category, Dataset
from datasets.models import Category, DataLayer, Dataset
from treebeard.forms import movenodeform_factory
from django_json_widget.widgets import JSONEditorWidget


class DatasetAdminForm(forms.ModelForm):
Expand Down Expand Up @@ -40,3 +41,33 @@ class Meta:
"name",
"order",
)


class DataLayerAdminForm(forms.ModelForm):
def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
self.fields["created_by"].disabled = True
self.fields["original_name"].disabled = True
self.fields["mimetype"].disabled = True
self.fields["url"].disabled = True
self.fields["geometry"].disabled = True

class Meta:
model = DataLayer
widgets = {
"info": JSONEditorWidget,
"metadata": JSONEditorWidget,
}
fields = (
"organization",
"created_by",
"dataset",
"category",
"name",
"info",
"metadata",
"original_name",
"mimetype",
"url",
"geometry",
)
1 change: 1 addition & 0 deletions src/planscape/datasets/models.py
Original file line number Diff line number Diff line change
Expand Up @@ -216,5 +216,6 @@ def __str__(self) -> str:
return f"{self.name} [{self.type}]"

class Meta(TypedModelMeta):
ordering = ("organization", "dataset", "id")
verbose_name = "Datalayer"
verbose_name_plural = "Datalayers"
1 change: 1 addition & 0 deletions src/planscape/organizations/models.py
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,7 @@ def __str__(self):
return f"{self.name} [{self.type}]"

class Meta(TypedModelMeta):
ordering = ("id",)
verbose_name = "Organization"
verbose_name_plural = "Organizations"
constraints = [
Expand Down
1 change: 1 addition & 0 deletions src/planscape/planscape/settings.py
Original file line number Diff line number Diff line change
Expand Up @@ -68,6 +68,7 @@
"django.contrib.staticfiles",
"django.contrib.gis",
"django_extensions",
"django_json_widget",
"actstream",
"password_policies",
"rest_framework",
Expand Down

0 comments on commit e4207d8

Please sign in to comment.