首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >将模型属性传递给Django中的URL

将模型属性传递给Django中的URL
EN

Stack Overflow用户
提问于 2020-10-20 15:41:24
回答 1查看 289关注 0票数 1

我对Django很陌生。我有一个模型,它有两个字段,名为id (as pk)和region,我有一个页面来返回每个region.There中的对象,它们是10个区域,我需要将区域号传递给url,以便从db筛选该区域检索数据。这是我的代码:

views.py

代码语言:javascript
运行
复制
def render_pdf_view(request, *args, **kwargs):
pk = kwargs.get('pk')   *********here i need to get region from clicked button instead of pk*************
data = MyModel.objects.filter(region=pk)
template_path = 'pdf/Pdf.html'
context = {'data':data}
return response

urls.py

代码语言:javascript
运行
复制
path('pdf/<pk>/', render_pdf_view, name='pdf-data') ***I need to pass region instead of pk***

模板

代码语言:javascript
运行
复制
<a href="{% url 'application : pdf-data' ? %}"> export pdf </a> 

我不知道如何将该区域从单击按钮传递到视图,然后将其传递给url。任何帮助都将不胜感激。

EN

回答 1

Stack Overflow用户

发布于 2020-10-20 15:53:09

若要将区域从模板传递到视图,可以使用模板执行此操作;

代码语言:javascript
运行
复制
<a href="{% url 'application:pdf-data' object.region %}"> export pdf </a>

然后URL路径需要指定区域;

代码语言:javascript
运行
复制
path('pdf/<str:region>/', render_pdf_view, name='pdf-data')

然后视图可以使用该值。

代码语言:javascript
运行
复制
def render_pdf_view(request, region, *args, **kwargs):

    data = MyModel.objects.filter(region=region)
    template_path = 'pdf/Pdf.html'
    context = {'data':data}
    return response
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64448633

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档