цикл for не работает в одном шаблоне и в другом запросе (показан только первый цикл) - PullRequest
0 голосов
/ 30 октября 2019

У меня есть модель и переданная база контента для каждого элемента панели инструментов, но элемент панели управления для первого элемента только создается, а другой элемент не отображается. В чем заключается мой код проблемы? Представление:

    def dashboards(request,slug):
            domain_list = Domain.objects.all()
            category_list = Dashboard.objects.all()
            widget_list = Widget.objects.filter(dashboard_list__Dashboard_name__contains=slug)
            return render(request, "Dashboards.html", {'domain_list': domain_list,
                                                       'category_list': category_list,
                                                       'widget_list': widget_list
                                                       })
class DashboardList(generic.ListView):
    queryset = Widget.objects.filter(status=1).order_by('-created_on')
    template_name = 'Dashboards.html'

class DashboardDetail(generic.DetailView):
    model = Widget
    template_name = 'Dashboards.html'

url:

   urlpatterns = [
        path('dashboards/<slug:slug>/',dashboards, name='dashboard_list'),
    ]

Dashboard.html:
    {% for Post in widget_list.all %}
    {{ Post.title }}
    {% endfor %}

У меня есть меню и слаг-вызов из них:

 {% block nav_links_dashboard %}
      {% for domain in domain_list %}
      <ul class="treeview-menu">
        <li class="treeview">
          <a href="#"><i class="fa fa-dashcube"></i>    {{ domain }}
            <span class="pull-right-container">
              <i class="fa fa-angle-left pull-right"></i>
            </span>
          </a>
    {% for Category in domain.categorys.all %}
         <ul class="treeview-menu">
            <li><a href="http://127.0.0.1:8000/dashboards/{{ Category.slug }}#"><i class="fa fa-adjust"></i> {{ Category.Dashboard_name }}</a></li>
          </ul>
            {% endfor %}
        </li>
      </ul>
  {% endfor %}

{% endblock nav_links_dashboard%}

Модель:

   class Widget(models.Model):
            title = models.CharField(max_length=200, unique=True)
            slug = models.SlugField(max_length=200, unique=True)
            dashboard_list = models.ForeignKey(Dashboard, on_delete=models.CASCADE, related_name='Widget_category')

     def __str__(self):
                return self.title

    class Dashboard(models.Model):
        Dashboard_name = models.CharField(max_length=20)
        slug = models.SlugField()
        Domain=models.ForeignKey(Domain,related_name='categorys',on_delete=models.CASCADE)

Виджеты элементов для в Dashboard Test1 могут быть загружены: enter image description here

для других элементов Виджеты не загружены enter image description here

Первый виджет панели мониторинга на основе загруженного модели содержимого, другие не загружены enter image description here

...