Django: Friendlier header for StackedInline for auto generated through model?(Django:StackedInline 的更友好的标题,用于通过模型自动生成?)
问题描述
我用的是Django admin StackedInline,如下:
I'm using a Django admin StackedInline, as follows:
class BookInline(admin.StackedInline):
model = Book.subject.through
verbose_name = 'Book'
verbose_name_plural = 'Books with this subject'
class SubjectAdmin(admin.ModelAdmin):
inlines = [
BookInline,
]
一切正常,但标题非常难看:
It all works, but the header is pretty ugly:
Books With This Subject
Book: Book_subject object
有谁知道我可以如何摆脱或更改 Book_subject 对象 部分?
Anyone know how I can get rid of, or change, the Book_subject object part?
谢谢!
推荐答案
我从来没有用过这样的m2m字段,谢谢!学到了新东西.
I've never used an m2m field like this, so thanks! Learned something new.
我找到了两种解决问题的方法:
I found 2 ways to get around the problem:
1:只需用新函数重新分配 __unicode__ 函数
1: simply reassign the __unicode__ function with a new function
class MyInline(admin.TabularInline):
MyModel.m2m.through.__unicode__ = lambda x: 'My New Unicode'
model = MyModel.m2m.through
2:设置代理模型对于 m2m.through 模型并改用该模型
2: set up a proxy model for the m2m.through model and use that model instead
class MyThrough(MyModel.m2m.through):
class Meta:
proxy = True
def __unicode__(self):
return "My New Unicode"
class MyInline(admin.TabularInline):
model = MyThrough
这篇关于Django:StackedInline 的更友好的标题,用于通过模型自动生成?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:Django:StackedInline 的更友好的标题,用于通过模型自动生成?
基础教程推荐
- 与常规 dict 相比,Python manager.dict() 非常慢 2022-01-01
- numpy float:比算术运算中内置的慢 10 倍? 2022-01-01
- Discord.py 缺少必需的参数 2022-01-01
- 在 Celery 工作人员中捕获 Heroku SIGTERM 以优雅地关 2022-01-01
- 用 Python 编写 Fortran 无格式文件 2022-01-01
- pyserial - 可以从线程 a 写入串行端口,是否阻塞从线程 b 读取? 2022-01-01
- 尝试制作WhatsApp机器人 2022-01-01
- 由Python将MP3转换为MIDI(类型错误:无法加载插件:mtg-Melodia:Melodia) 2022-01-01
- 将 x 轴刻度更改为自定义字符串 2022-01-01
- 使用生成器和迭代器时 Python 多循环失败 2022-01-01
