关于django后台admin的model是按照注册顺序排序的,如果把register()类的顺序调整后,又后出现前后依赖的字段外键找不到的问题。
于是梦翔儿尝试去读django的源码,研究源码中是怎么排序,想办法给倒过来。
源码目录:
env\Lib\site-packages\django\contrib\admin\sites.py
找到:
def get_app_list(self, request):
中的
app[‘models’].sort(key=lambda x: x[‘name’])
这一行改为:
app[‘models’].sort(key=lambda x: x[‘name’], reverse=True)
sort()带关键字key,有个参数reverse,它是一个布尔值True/False,作用是用来决定是否要对列表进行反向排序。
保存,搞定~ 左侧的数据表,终于正常顺序显示了。
有高手其实重写覆盖一下该方法也行。