Цикл фактически предназначен для навигации. Список категорий и магазинов, которые продают или оказывают услуги по каждой категории. Пожалуйста .. Я новичок в Django и Python. И я прошу прощения, если я очень медленно, чтобы получить это вещи ... СпасибоДругие шаблоны не наследуют FOR LOOP в моем базовом шаблоне
models.py
class ShopCategories(models.Model):
category = models.CharField(max_length=50, unique=True)
def __str__(self):
return self.category
class NewShop(models.Model):
category = models.ForeignKey(ShopCategories)
main_image = models.FileField(null=True, blank=True)
name = models.CharField(max_length=100, unique=True)
tagline = models.CharField(max_length=50, default='Enter tagline here2')
description = models.TextField(default='enter shop description')
shop_image = models.FileField(null=True, blank=True)
views.py
def homepage(request):
return render_to_response('index.html')
def basefile(request):
cat1 = NewShop.objects.filter(category_id=1)
cat2 = NewShop.objects.filter(category_id=2)
cat3 = NewShop.objects.filter(category_id=3)
cat4 = NewShop.objects.filter(category_id=4)
name1 = ShopCategories.objects.filter(id=1)
name2 = ShopCategories.objects.filter(id=2)
name3 = ShopCategories.objects.filter(id=3)
name4 = ShopCategories.objects.filter(id=4)
return render_to_response('base.html', {'Shop_cat1':cat1, 'Shop_cat2':cat2, 'Shop_cat3':cat3,
'Shop_cat4':cat4,'shop_name1':name1, 'shop_name2':name2,
'shop_name3':name3, 'shop_name4':name4})
base.html
<ul class="nav navbar-nav">
<li class="current-menu-item">
<ul class="nav navbar-nav">
<li class="current-menu-item">
<a href="/">ENTOURAGE MALL</a>
</li>
<li class="dropdown pi-mega-fw menu-item-has-children">
<a href="#" data-toggle="dropdown" class="dropdown-toggle" role="button">SHOPS</a>
<ul class="dropdown-menu">
<li>
<div class="pi-mega-content">
<div class="row">
<div class="col-md-3 pi-mm-col">
<ul class="pi-mm-list">
{% for shop in shop_name1 %}
<li>
<h3> {{ shop }}</h3>
</li>
{% endfor %}
{% for cat in Shop_cat1 %}
<li><a href="#">{{ cat }}</a></li>
{% endfor %}
</ul>
</div>
<div class="col-md-3 pi-mm-col">
<ul class="pi-mm-list">
{% for shop in shop_name2 %}
<li>
<h3> {{ shop }}</h3>
</li>
{% endfor %}
{% for cat in Shop_cat2 %}
<li><a href="#">{{ cat }}</a></li>
{% endfor %}
</ul>
</div>
<div class="col-md-3 pi-mm-col">
<ul class="pi-mm-list">
{% for shop in shop_name3 %}
<li>
<h3> {{ shop }}</h3>
</li>
{% endfor %}
{% for cat in Shop_cat3 %}
<li><a href="#">{{ cat }}</a></li>
{% endfor %}
</ul>
</div>
</div>
</div>
</li>
</ul>
</li>
<li class="menu-item">
<a href="contact" role="button">ENTOURAGE LOUNGE</a>
</li>
<li class="menu-item">
<a href="contact" role="button">About MALL</a>
</li>
<li class="menu-item">
<a href="contact" role="button">BLOG</a>
</li>
</ul>
index.html
{% extends "base.html" %}
{% block title %} This is Homepage {% endblock title %}
Urls.py
urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'^$', views.homepage),
url(r'^base/', views.basefile)
]
if settings.DEBUG:
urlpatterns += static(settings.STATIC_URL, document_root= settings.STATIC_ROOT)
urlpatterns += static(settings.MEDIA_URL, docuemt_root= settings.MEDIA_ROOT)
Это прекрасно работает в base.html. Но когда i {% расширяет base.html%} в индексе или других шаблонах. Шаблоны загружаются просто отлично, но цикл FOR не работает. Что именно я делаю неправильно?
где вы реализуете контекст 'shop_name1' на внутреннем интерфейсе? –
@SancaKembang Я действительно не понимаю, что вы имеете в виду. –
для shop_name1 в shop_name1? интересный цикл –