2024-10-04 09:22:44 发布
网友
我在Django中有一个对象LeatherChair,Django给它一个object_name的leatherchair,这让我很恼火。我希望它是leather_chair,带下划线。在
LeatherChair
object_name
leatherchair
leather_chair
object_name似乎存储在Options实例中,但如何更改它呢?在
Options
试图改变object_name是一个非常糟糕的主意。正如您所说,它是在Model._meta中设置的,但它不是文档中的{a1}之一。试图改变它就有弄坏东西的危险。在
Model._meta
我不明白为什么改变它如此重要。它没有公开显示,所以它是否有下划线并不重要。在下面的评论中,您指出object_name是由CBV使用的,但是我将使用文档化的方法来更改CBV中的context_object_name,而不是尝试在模型中更改它
context_object_name
如果您必须在模型上更改它,您可能需要在^{}中进行修改。您可以尝试monkey patchingDEFAULT_PARAMS,以允许您在模型Meta类中设置object_name。在
DEFAULT_PARAMS
Meta
试图改变
object_name
是一个非常糟糕的主意。正如您所说,它是在Model._meta
中设置的,但它不是文档中的{a1}之一。试图改变它就有弄坏东西的危险。在我不明白为什么改变它如此重要。它没有公开显示,所以它是否有下划线并不重要。在下面的评论中,您指出
object_name
是由CBV使用的,但是我将使用文档化的方法来更改CBV中的context_object_name
,而不是尝试在模型中更改它如果您必须在模型上更改它,您可能需要在^{} 中进行修改。您可以尝试monkey patching
DEFAULT_PARAMS
,以允许您在模型Meta
类中设置object_name
。在相关问题 更多 >
编程相关推荐