Javascript 如何在django上动态更改块的内容?

Javascript 如何在django上动态更改块的内容?,javascript,python,html,django,Javascript,Python,Html,Django,参见下面的固定代码 我正在使用django 1.8开发我的第一个网页项目。“我的网页”有一个部分,其中包括一个产品菜单和一个列,该列根据所选菜单项显示不同的视图 起初,我尝试了一种方法,其中每个菜单按钮都分配了一个onclick js函数,该函数可以更改块的内容。我在想,然后我会将每个产品的html代码写入单独的文件中,js函数将在其中读取这些代码。我让它部分工作,但感觉有点粗略 我的第二种方法是基于使用django模板,但作为一个初学者,我遇到了一些错误,我不太清楚到底是什么问题。如果有人能指

参见下面的固定代码

我正在使用django 1.8开发我的第一个网页项目。“我的网页”有一个部分,其中包括一个产品菜单和一个列,该列根据所选菜单项显示不同的视图

起初,我尝试了一种方法,其中每个菜单按钮都分配了一个onclick js函数,该函数可以更改块的内容。我在想,然后我会将每个产品的html代码写入单独的文件中,js函数将在其中读取这些代码。我让它部分工作,但感觉有点粗略

我的第二种方法是基于使用django模板,但作为一个初学者,我遇到了一些错误,我不太清楚到底是什么问题。如果有人能指出我做错了什么,或者告诉我动态更改内容的正确方法,我将不胜感激

我当前收到的错误:

http://127.0.0.1:8000/productmonitor/
NoReverseMatch at /productmonitor/
Reverse for 'product' with arguments '('',)' and keyword arguments '{}' not found. 1 pattern(s) tried: [u'productmonitor/(?P<product_name>[a-z]+)/$']

http://127.0.0.1:8000/productmonitor/
NoReverseMatch at /productmonitor/dualpol/
Reverse for 'product' with arguments '('',)' and keyword arguments '{}' not found. 1 pattern(s) tried: [u'productmonitor/(?P<product_name>[a-z]+)/$']
base_productmonitor.html

{% extends "productmonitor/base.html" %}    
{% block content %}
    <div class="productSelectMenu">
        <ul>
            <p>Test</p>
            {% for product in products %}
                <li><a href="{% url 'productmonitor:product' 'dualpol' %}">{{ product.name }}<a/></li>  
            {% endfor %}
        </ul>
    </div>

    {% block productcontent %}
        <div id="productView" class="productView">
            <p>Default productView content</p>    
        </div>
    {% endblock %}
{% endblock %}
{% extends "productmonitor/base.html" %}

{% block content %}
    <div class="productSelectMenu">
        <ul>
            <li><a href="{% url 'productmonitor:product' 'dualpol' %}">Dual pol<a/></li>
            <li><a href="{% url 'productmonitor:product' 'rhi' %}">Rhi<a/></li>
        </ul>
    </div>

    {% block productcontent %}
        <div id="productView" class="productView">
            <p>Default productView content</p>    
        </div>
    {% endblock %}
{% endblock %}
base_productmonitor.html

{% extends "productmonitor/base.html" %}    
{% block content %}
    <div class="productSelectMenu">
        <ul>
            <p>Test</p>
            {% for product in products %}
                <li><a href="{% url 'productmonitor:product' 'dualpol' %}">{{ product.name }}<a/></li>  
            {% endfor %}
        </ul>
    </div>

    {% block productcontent %}
        <div id="productView" class="productView">
            <p>Default productView content</p>    
        </div>
    {% endblock %}
{% endblock %}
{% extends "productmonitor/base.html" %}

{% block content %}
    <div class="productSelectMenu">
        <ul>
            <li><a href="{% url 'productmonitor:product' 'dualpol' %}">Dual pol<a/></li>
            <li><a href="{% url 'productmonitor:product' 'rhi' %}">Rhi<a/></li>
        </ul>
    </div>

    {% block productcontent %}
        <div id="productView" class="productView">
            <p>Default productView content</p>    
        </div>
    {% endblock %}
{% endblock %}
{%extensed“productmonitor/base.html”%}
{%block content%}
  • 双极化
  • Rhi
{%block productcontent%} 默认productView内容

{%endblock%} {%endblock%}
base_productmonitor_dualpol.html

{% extends "productmonitor/base_productmonitor.html" %}
{% block productcontent %}
<p>
    dualpol
</p>
{% endblock %}
{% extends "productmonitor/base_productmonitor.html" %}
{% block productcontent %}
<div id="productView" class="productView">
    <p>
        dualpol
    </p>
</div>
{% endblock %}
{%extensed“productmonitor/base_productmonitor.html”%}
{%block productcontent%}

dualpol

{%endblock%}
我认为错误在于产品功能中的渲染没有得到正确的
使用。它显示了它拥有的参数(它正在尝试的
)是无的。因此,在产品功能中,您需要做的是尝试并确保您真正获得了

您是否已将
productmonitor
定义为包含url的命名空间?是的,我有:url(r'^productmonitor/',include('productmonitor.url',namespace='productmonitor'))请检查您传递的KWARG是否与url正则表达式模式匹配。我发现错误中的正则表达式与
url.py
中的不同。谢谢,我花了一些时间才找到错误,但它确实与kwargs相关,没有正确地传递到视图中。我在问题中添加了固定版本的代码,不确定是否也应该删除旧版本。@Bronson先生抱歉,如果我的回答文章有点混乱,我忘了用代码块敲击
。很高兴我能帮忙!
{% extends "productmonitor/base.html" %}

{% block content %}
    <div class="productSelectMenu">
        <ul>
            <li><a href="{% url 'productmonitor:product' 'dualpol' %}">Dual pol<a/></li>
            <li><a href="{% url 'productmonitor:product' 'rhi' %}">Rhi<a/></li>
        </ul>
    </div>

    {% block productcontent %}
        <div id="productView" class="productView">
            <p>Default productView content</p>    
        </div>
    {% endblock %}
{% endblock %}
{% extends "productmonitor/base_productmonitor.html" %}
{% block productcontent %}
<div id="productView" class="productView">
    <p>
        dualpol
    </p>
</div>
{% endblock %}