Python 如何在Django中更改模型的“object_name”

Python 如何在Django中更改模型的“object_name”,python,django,Python,Django,我在Django有一个对象LeatherChair,Django给了它一个LeatherChair的object\u名称,这让我很生气。我希望它是皮革椅子,带有下划线 object\u name似乎存储在Options实例中,但是如何更改它呢?尝试更改object\u name是一个非常糟糕的主意。它是在模型中设置的。_meta如您所说,但它不是文档中的一个。试图改变它可能会损坏东西 我不明白为什么改变它如此重要。它不会公开显示,所以它是否有下划线并不重要。在下面的评论中,您指出CBV使用了ob

我在Django有一个对象
LeatherChair
,Django给了它一个
LeatherChair
object\u名称,这让我很生气。我希望它是
皮革椅子
,带有下划线


object\u name
似乎存储在
Options
实例中,但是如何更改它呢?

尝试更改
object\u name
是一个非常糟糕的主意。它是在
模型中设置的。_meta
如您所说,但它不是文档中的一个。试图改变它可能会损坏东西

我不明白为什么改变它如此重要。它不会公开显示,所以它是否有下划线并不重要。在下面的评论中,您指出CBV使用了
object\u name
,但我会使用文档化的方法来更改CBV中的
context\u object\u name
,而不是尝试在模型上更改它


如果你必须在模型上修改它,你可能需要修改一下。您可以尝试monkey patching
DEFAULT_PARAMS
,以允许您在模型
Meta
类中设置
object\u name

这在多个地方都很重要,例如基于类的视图使用的对象上下文名称。我可以在CBV上更改,但我更喜欢在模型本身上更改。好的,我没有想到CBV。我已经更新了我的答案。祝你好运