kis*_*rgy 20 django django-models django-admin
我有一个名为ManyToManyField 的Team模型players,我希望能够Player在创建时将s 添加到新团队,但在创建后无法修改它.
如果我players只读这样的字段:
# admin.py
class TeamAdmin(admin.ModelAdmin)
readonly_fields = ['players']
admin.site.register(Team, TeamAdmin)
Run Code Online (Sandbox Code Playgroud)
我将无法将玩家添加到新玩家Team.如何使players字段"创建后只读"或类似的东西?
Sud*_*pta 44
您需要覆盖get_readonly_fields()管理类的方法.
# admin.py
class TeamAdmin(admin.ModelAdmin)
...
def get_readonly_fields(self, request, obj=None):
if obj: #This is the case when obj is already created i.e. it's an edit
return ['players']
else:
return []
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
4049 次 |
| 最近记录: |