簡體   English   中英

無法將數據傳遞到django中的Generic DetailView

[英]Unable to pass data into Generic DetailView in django

我試圖將兩個模型傳遞給我的模板視圖。 問題是視圖中沒有數據顯示。

這是我嘗試過的一些代碼:

 # views.py
 class ServiceDetailView(generic.DetailView):
      model = Service
      template_name = "service_detail.html"

      def get_context_data(self, **kwargs):
           context = super(ServiceDetailView, self).get_context_data(**kwargs)
           context['prices'] = Price.objects.filter(service__serviceid=self.kwargs.get('pk'))
           return context

 #service_detail.html
 <h5>Other Hospital Descriptions</h5>
       <ul>
       {% for price in prices.price_value.all %}
          <li>price</li>
       {% endfor %}

什么都沒有通過。 Service_id是主鍵,價格鏈接到服務表。

如果您已經通過了價格查詢集,那么為什么要使用price_value 我認為這段代碼可以正常工作:

 <h5>Other Hospital Descriptions</h5>
   <ul>
   {% for price in prices %}
      <li>{{ price }}</li>
   {% endfor %}

或者,如果Price模型具有related_name在ForeignKey的以Service命名price_value ,然后將下面的代碼也能發揮作用:

 <h5>Other Hospital Descriptions</h5>
   <ul>
   {% for price in object.price_value.all %}
      <li>{{ price }}</li>
   {% endfor %}

在這種情況下,您不需要傳遞Price

或者如果它沒有任何related_name,那么{% for price in object.price_set.all %}也可以。

暫無
暫無

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

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