簡體   English   中英

如何在Django 2.0中訪問下一頁

[英]How I can access to the next page in django 2.0

我有以下風景。 在第一頁中,有產品類型,當選擇特定類型時,它將發送到特定類型產品的頁面,然后,當我選擇產品時,應將我發送到具有產品完整信息的產品頁面。 但是我無法訪問上一個產品頁面。 我該如何解決? 我的代碼:

views.py:

def products_fizlitso(request):

 fizlitso_product = InsuranceProducts.objects.filter(product_type="Физическое 
 Лицо")

 context = {'fizlitso_product': fizlitso_product}
 return render(request, 'insurance_products/fizlitso/fizlitso.html', context)


def fizlitso_type(request, type_id):

 product_type = get_object_or_404(InsuranceProducts, id=type_id)

 context = {'product_type': product_type}
 return render(request, 'insurance_products/fizlitso/fizlitso_type.html', 
 context)

def product_page(request, product_id):

 product = get_object_or_404(ProductType, id=product_id)

 context = {'product': product}
 return render(request, 'insurance_products/fizlitso/product.html', context)

這是urls.py:

# ******************************************************************
path('fizlitso/', views.products_fizlitso, name='product_fizlitso'),
# ******************************************************************

# ******************************************************************
path('fizlitso/product_type<int:type_id>', views.fizlitso_type, name='fizlitso_type'),
# ******************************************************************

# ******************************************************************
path('fizlitso/product_type<int:type_id>/product<int:product_id>', views.product_page, name='product_page'),
# ******************************************************************

這是模板的django部分,其中包含所有產品類型:

  {% for product in fizlitso_product %}
  <div class="btmspace-80">
    <h3>{{ product.product_area }}</h3>
    <img class="imgr borderedbox inspace-5" src="{% static 'img/imgr.gif' %}" alt="">
    <p>
        {{ product.product_description }}
    </p>

    <p>
        Подробно вы можете узнать <a href="{% url 'main:fizlitso_type' product.id %}">здесь</a></a>
    </p>
  </div>
  {% endfor %}

這是模板的django部分,其中包含特定類型的所有產品:

  {% for product in product_type.producttype_set.all %}
  <div class="btmspace-80">
    <h3>{{ product.title }}</h3>
    <img class="imgr borderedbox inspace-5" src="{% static 'img/imgr.gif' %}" alt="">
    <p>
        {{ product.description }}
    </p>

    line 84  <p>
      Подробно вы можете узнать <a href="{% url 'main:product_page' product.id %}">здесь</a></a>
    </p>
  </div>
  {% endfor %}

這是有關從上一頁選擇的特定產品的頁面:

    <div class="btmspace-80">
    <h3>{{ product.title }}</h3>
    <img class="imgr borderedbox inspace-5" src="{% static 'img/imgr.gif' %}" alt="">
    <p>
        {{ product.description }}
    </p>
  </div>

而這是錯誤:

/ fizlitso / product_type1上的NoReverseMatch

找不到帶有參數“('',)”的“ product_page”。 嘗試了1個模式:['fizlitso \\ / product_type(?P [0-9] +)\\ / product(?P [0-9] +)$']

C:\\ Users \\ Lenovo 101 \\ PycharmProjects \\ uzagro_3 \\ main \\ templates \\ insurance_products \\ fizlitso \\ fizlitso_type.html,第84行錯誤

您的網址名稱product_page有兩個參數:type_id,product_id

path('fizlitso/product_type<int:type_id>/product<int:product_id>', views.product_page, name='product_page')

你給一個?

<a href="{% url 'main:product_page' product.id %}">

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM