我正在将一个django应用程序从1.4更新到1.8,并且遇到了django管理员的一个小问题。Django管理员表单和默认值的内联模型
我的模型看起来像这样
def new_key():
return binascii.b2a_hex(os.urandom(20))
class ApiKey(models.Model):
customer = models.ForeignKey(UserProfile)
key = models.CharField(max_length=40, default=new_key)
而且admin.py是
class ApiKeyInline(admin.StackedInline):
model = ApiKey
extra = 0
class UserProfileAdmin(admin.ModelAdmin):
inlines = [ApiKeyInline]
admin.site.register(UserProfile, UserProfileAdmin)
当使用管理页面的API密钥得到一个随机值无误。但是,保存UserProfile时,它不会被保存,就好像没有添加任何内容。如果我手动更改自动生成的密钥保存中的单个leter,则可以正常工作。在我看来,这是django检测到更改或类似问题的问题。
有什么建议吗?代码在1.4中工作。