【问题标题】:Django - Getting parameters from URLDjango - 从 URL 获取参数
【发布时间】:2014-07-02 09:46:59
【问题描述】:

我将 URL 中的参数传递给我的视图,如下所示:

127.0.0.1:8000/cars/?model_number=13375

得到它是这样的:

class GetCarDetails(View):
    def get(self, *args, **kwargs):
        model_number = "";
        if request.GET.get('model_number'):
            model_number = request.GET.get('model_number')

但我现在想这样通过:

127.0.0.1:8000/cars/13375/

我希望 Django 将 13375 视为型号

【问题讨论】:

标签: python django django-views django-urls


【解决方案1】:

您需要在 url 处定义它:

url(r'^cars/(?P<pk>[0-9]+)/$', views.GetCarDetails.as_view(), name="getcardetails"),

在你看来:

class GetCarDetails(View):

    ...

    def get_context_data(self, **kwargs):
        context = super(GetCarDetails, self).get_context_data(**kwargs)
        context["model_number"] = self.kwargs['pk'];
        return context

正如@Anentropic in cmets 所说,更详细的信息here

【讨论】:

  • 我将如何在我的def get(self, *args, **kwargs): 中访问这个返回的上下文
  • 我猜你可以在那里以同样的方式使用它:self.kwargs['pk'];
猜你喜欢
  • 2021-05-18
  • 2021-01-05
  • 1970-01-01
  • 1970-01-01
  • 2020-08-24
  • 2014-05-12
  • 2016-02-14
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多