Fix django admin for other typeclasses. ChannelDB still requires subscribers to validate. Changed PickleField's clean method to prevent attribute errors for attributes added during basetype setup.
This commit is contained in:
parent
c16a03fb5e
commit
ee19a92c55
4 changed files with 54 additions and 5 deletions
|
|
@ -2,6 +2,8 @@
|
|||
# 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
|
||||
|
|
@ -50,5 +52,22 @@ class ScriptDBAdmin(admin.ModelAdmin):
|
|||
)
|
||||
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