【问题标题】:Get id/name in request.POST Django在 request.POST Django 中获取 id/name
【发布时间】:2017-07-16 17:00:22
【问题描述】:

我正在尝试获取单击的 li 元素的 id,但我不明白 我需要一些帮助,在此先感谢

编辑:我正在使用 wagtail cms,我的应用基于 模型.py:

class index(Page)
    def get_context(self, request):
     base_tags = ["foo","boo","voo"]
        if request.method == "POST" :
            tag = request.POST[("id","")]
            blogpages = BlogPage.objects.live().filter(tags__name__in=[tag])
        return #....

index.html:

<form id="content" method="post">
<ul class="nav nav-tabs" role="tablist">
    {% csrf_token %}
    {%for tag in base_tags %}
  <li   name="id" value="{{tag.id}}" onclick="content.submit();"  role="presentation"><a href="#{{tag}}" aria-controls="{{tag}}" role="tab" data-toggle="tab">{{tag}}</a></li>
  {% endfor %}
</ul>
</form>

【问题讨论】:

  • 这真的不是表单的工作方式。但是你为什么要使用表格呢?为什么不是标准链接,其 URL 包含标记值?
  • 你有更好的主意吗?我尝试了很多,但没有人工作
  • 我需要一个 post 方法来获取标签并过滤内容

标签: html django httprequest wagtail


【解决方案1】:

这里根本不要使用表格。使用标准链接:

<ul class="nav nav-tabs" role="tablist">
  {% for tag in base_tags %}
     <li aria-controls="{{tag}}" role="tab" data-toggle="tab"><a href="{% url "tags" tag %}">{{tag}}</a></li>
  {% endfor %}
</ul>

并像这样定义您的 URL 和视图:

url(r'^tag/(?P<tag>/w+)/$', tag_view, 'tags'),

...

def tag_view(request, tag):
    blogpages = BlogPage.objects.live().filter(tags__name=tag)

【讨论】:

  • 我忘了注意我正在使用 wagtail cms 并且我的应用程序是基于模型的,我将编辑帖子
  • 我可以不定义url直接使用slugurl
猜你喜欢
  • 2018-07-22
  • 1970-01-01
  • 2022-01-08
  • 2019-09-16
  • 1970-01-01
  • 2021-09-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多