Trying to relocate admin (not working yet)
This commit is contained in:
parent
273cc31146
commit
8e02be23e4
15 changed files with 67 additions and 49 deletions
|
|
@ -1,91 +0,0 @@
|
|||
#
|
||||
# This sets up how models are displayed
|
||||
# in the web admin interface.
|
||||
#
|
||||
from django.conf import settings
|
||||
|
||||
from evennia.typeclasses.admin import AttributeInline, TagInline
|
||||
|
||||
from evennia.scripts.models import ScriptDB
|
||||
from django.contrib import admin
|
||||
|
||||
|
||||
class ScriptTagInline(TagInline):
|
||||
"""
|
||||
Inline script tags.
|
||||
|
||||
"""
|
||||
|
||||
model = ScriptDB.db_tags.through
|
||||
related_field = "scriptdb"
|
||||
|
||||
|
||||
class ScriptAttributeInline(AttributeInline):
|
||||
"""
|
||||
Inline attribute tags.
|
||||
|
||||
"""
|
||||
|
||||
model = ScriptDB.db_attributes.through
|
||||
related_field = "scriptdb"
|
||||
|
||||
|
||||
class ScriptDBAdmin(admin.ModelAdmin):
|
||||
"""
|
||||
Displaying the main Script page.
|
||||
|
||||
"""
|
||||
|
||||
list_display = (
|
||||
"id",
|
||||
"db_key",
|
||||
"db_typeclass_path",
|
||||
"db_obj",
|
||||
"db_interval",
|
||||
"db_repeats",
|
||||
"db_persistent",
|
||||
)
|
||||
list_display_links = ("id", "db_key")
|
||||
ordering = ["db_obj", "db_typeclass_path"]
|
||||
search_fields = ["^db_key", "db_typeclass_path"]
|
||||
save_as = True
|
||||
save_on_top = True
|
||||
list_select_related = True
|
||||
raw_id_fields = ("db_obj",)
|
||||
|
||||
fieldsets = (
|
||||
(
|
||||
None,
|
||||
{
|
||||
"fields": (
|
||||
("db_key", "db_typeclass_path"),
|
||||
"db_interval",
|
||||
"db_repeats",
|
||||
"db_start_delay",
|
||||
"db_persistent",
|
||||
"db_obj",
|
||||
)
|
||||
},
|
||||
),
|
||||
)
|
||||
inlines = [ScriptTagInline, ScriptAttributeInline]
|
||||
|
||||
def save_model(self, request, obj, form, change):
|
||||
"""
|
||||
Model-save hook.
|
||||
|
||||
Args:
|
||||
request (Request): Incoming request.
|
||||
obj (Object): Database object.
|
||||
form (Form): Form instance.
|
||||
change (bool): If this is a change or a new object.
|
||||
|
||||
"""
|
||||
obj.save()
|
||||
if not change:
|
||||
# adding a new object
|
||||
# have to call init with typeclass passed to it
|
||||
obj.set_class_from_typeclass(typeclass_path=obj.db_typeclass_path)
|
||||
|
||||
|
||||
admin.site.register(ScriptDB, ScriptDBAdmin)
|
||||
Loading…
Add table
Add a link
Reference in a new issue