جانغو، الفئة والفئات الفرعية
-
07-07-2019 - |
سؤال
وايم الفئة العاملة والفئات الفرعية مع نماذج بيانات ، كل شيء على ما يرام في هذا الجزء، ولكن ولست بحاجة لاستخدام بلدي الفئة والفئات الفرعية في بلدي القائمة التنقل، والتراسل الفوري في محاولة لاستخدام هذا <وأ href = "http://www.sohtanaka.com/web-design/examples/horizontal-subnav/" يختلط = "نوفولو noreferrer" > مسج القائمة ، وايم جعل بلدي القائمة مع الفئات الفرعية، ولكن ايم فقدت مع جعل فرعية في الطريق:
<ul>
<li>
<a href="#">Category</a>
<!--subcategories-->
<span>Subcategory 1 </span>
<span>Subcategory 2 </span>
...
</li>
....
....
</ul>
ومشكلتي: في نماذج بيانات: مع "الذات"، لا اعلم كيف سوء القيام عليها في هذه الحالة لجعل فرعية (الأصل هو المجال نفسه) ..
class Category(models.Model):
name = models.CharField(core=True, maxlength=200)
slug = models.SlugField(prepopulate_from=('name',))
parent = models.ForeignKey('self', blank=True, null=True, related_name='child')
description = models.TextField(blank=True,help_text="Optional")
والشكر
المحلول
والحصول على جميع فئات المستوى الأعلى باستخدام شيء من هذا القبيل
top_level_cats = Category.objects.filter(parent__isnull=True)
وبعد ذلك:
for tlc in top_level_cats:
#do the HTML for the top-level category
for clc in tlc.child.all():
#do the HTML for the children of clc
إذا كان لديك فئات مستوى متعددة، سوف تحتاج أن يكون هناك دعوة متكررة في مكان ما هناك، ولكن هذا يعطي جوهر الأساسية.
لا تنتمي إلى StackOverflow