Что такое context_object_name=None в классе CeateView в django?
Получите имя, которое будет использоваться для объекта. Для context_object_name=None
Док:Например, статья будет статья Почему мы используем имя контекста_объекта в createview.У нас нет объекта, у нас просто простая форма для показа пользователям.
def get_context_object_name(self, obj):
"""Get the name to use for the object."""
if self.context_object_name:
return self.context_object_name
elif isinstance(obj, models.Model):
return obj._meta.model_name
else:
return None
Пожалуйста, кто-нибудь помогите мне????
В любом представлении, основанном на классах, имя объекта по умолчанию, в случае одного объекта - object
, а в случае нескольких объектов - object_list
. Это контекстные переменные, которые вы используете в своем шаблоне, создающем представление.
Например, в случае одного объекта, вы будете использовать их как
{{object}}
...
{{object.pk}}
и в случае нескольких элементов:
{% for i in object_list %}
...do something...
{% endfor %}
Когда вы предоставляете context_object_name
в представлении, переменная с именем object
будет заменена на нее.
Например: Если вы установили context_object_name='place'
, то в вашем шаблоне вы можете использовать экземпляр как {{place}}
вместо {{object}}