gpt4 book ai didi

Django 在 get_context_data() 方法中访问表单向导中的 url 参数

转载 作者:行者123 更新时间:2023-12-03 21:38:21 24 4
gpt4 key购买 nike

我有以下代码

---- urls.py ----

url(r'^(?P<city_slug>[-\w]+)/$',
BookingWizard.as_view(),
name='city_booking'),

---- View .py ----
class BookingWizard(SessionWizardView):

def get_context_data(self, form, **kwargs):
context = super(BookingWizard, self).get_context_data(form, **kwargs)
cities = City.objects.all()
context.update({'cities': cities,
'city': City.objects.get(slug=kwargs['city_slug'])})
return context

问题是我在尝试访问 kwargs['city_slug'] 时遇到关键错误在 get_context_data()方法。

虽然我可以访问 kwargs['city_slug']done()方法没有问题。

有任何想法吗?

最佳答案

您可以使用 self.kwargs 访问 kwargs .这是因为它被设置在 as_view() 中。 View的方法这是 SessionWizardView 的父类(super class).

https://github.com/django/django/blob/master/django/views/generic/base.py#L61-68

关于Django 在 get_context_data() 方法中访问表单向导中的 url 参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16276683/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com