Django-更改模型保存中的只读字段
我想这样做:Django-更改模型保存中的只读字段,django,django-admin,Django,Django Admin,我想这样做: class AlarmListAdmin( admin.ModelAdmin ): fieldsets = ( (None, {'fields' : ('owner',) } ), ( 'Alarm List', {'fields': ('listName', 'alarms') } ) ) readonly_fields = ('owner',) def save_model(self, request
class AlarmListAdmin( admin.ModelAdmin ):
fieldsets = (
(None, {'fields' : ('owner',) } ),
( 'Alarm List', {'fields': ('listName', 'alarms') } )
)
readonly_fields = ('owner',)
def save_model(self, request, instance, form, change):
"""Save the model, and fill in the current user as owner"""
if not change:
print str(request.user.username)
account = Account.objects.get(user=request.user.id)
instance.owner = account #owner needs to be an account object
instance.save()
但是django没有将owner字段添加到QueryDict,我想是因为它没有将任何只读字段添加到QueryDict
所以我不能像这个例子那样做:
from django.contrib import admin
class ArticleAdmin(admin.ModelAdmin):
def save_model(self, request, obj, form, change):
obj.user = request.user
obj.save()
没关系,你能做到的。我的错误显然是来自其他方面