【问题标题】:How to pass variables in a paramter of an html component with django如何使用 django 在 html 组件的参数中传递变量
【发布时间】:2020-10-26 20:12:49
【问题描述】:

我今天正在开发一个仅由一个应用程序(百科全书)组成的 django 项目,但我面临一些困难。

我有一个名为 index 的视图,它显示用户可以访问的所有百科全书。在每个文件上,我想添加一个链接,可以将用户重定向到相关的百科全书。

为此,在我的索引视图中,我调用了一个函数,该函数列出了我们可以访问的所有百科全书。此列表将用于呈现 html 页面。

我面临的问题是在这个名为 index.html 的 html 页面上。我试图在链接的 href 参数中传递每个百科全书的名称。这是我的html代码:

{% extends "encyclopedia/layout.html" %}

{% block title %}
    Encyclopedia
{% endblock %}

{% block body %}
    <h1>All Pages</h1>

    <ul>
        {% for entry in entries %}
            <li><a href ="/{{entry}}">{{ entry }}</a></li>
        {% endfor %}
    </ul>

{% endblock %}

P.S:我的 django 项目基于https://cs50.harvard.edu/web/2020/projects/1/wiki/提供的基本代码

【问题讨论】:

    标签: html django django-templates


    【解决方案1】:

    在您的 urls.py 文件中,将此代码放入:

    path("<str:entry>/", views.display_entry, name="display_entry")
    

    &lt;str:&gt; 确定变量类型,后面的文本是变量的名称。您可以在视图中执行以下操作:

    def display_entry(request, entry):
    

    注意urls.py中的名字和view要一致。

    【讨论】:

    • 请问如何将它添加到我的 html 链接组件中?但我不明白在 url 中请求一个字符串如何让我将我的百科全书显示为链接。如果可以更好地解释我的项目组织方式,这就是我的 urlpatterns 看起来如何链接:urlpatterns = [ path("", views.index, name="index"), path("Home", views.index, name="index"), path("&lt;str:title&gt;", views.find_page, name="find"), ]
    【解决方案2】:

    最后我不得不删除斜线。它正在使用此代码:

    <li><a href ={{entry}}>{{ entry }}</a></li>
    

    感谢@AryanJassl 的帮助。

    【讨论】:

      猜你喜欢
      • 2015-07-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-03-07
      • 2018-10-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多