0

カテゴリ別にグループ化された成分のリストを表示しようとしています。カテゴリIDのリストを表示するところまで行きましたが、これを進めることができないようです。これが私のセットアップです。どんな助けも大歓迎です。

# models.py
class IngredienceCategory(models.Model):
    name = models.CharField(max_length=30)

    def __unicode__(self):
        return self.name


class Ingredience(models.Model):
    name = models.CharField(max_length=30)
    category = models.ForeignKey(IngredienceCategory, null=True, blank=True)

    def __unicode__(self):
        return self.name


# views.py
def home(request):
    ingredients = Ingredience.objects.all()
    ingrcat = IngredienceCategory.objects.all()

    return render_to_response('home.html', {'ingredients': ingredients, 'ingrcat': ingrcat,})


# home.html template
<h2>List of items by category:</h2>
{% regroup ingredients|dictsort:"category_id" by category_id as ingr_by_cats %}
{% for category in ingr_by_cats %}
    <p>{{ category.grouper }}</p>
    <ul>
        {% for item in ingrcat.list %}
            <li><a href="#" id="{{ item.id }}">{{ item.name }}</a></li>
        {% endfor %}
    </ul>
{% endfor %}

私が現在得ているもの:

<h2>List of items by category:</h2>
<p>1</p>
<ul></ul>

<p>2</p>
<ul></ul>

<p>3</p>
<ul></ul>

私が達成しようとしていること:

<h2>List of items by category:</h2>
<p>Category A</p>
<ul>
    <li>Item 1</li>
    <li>Item 2</li>
    <li>Item 3</li>
</ul>

<p>Category B/p>
<ul>
    <li>Item 4</li>
    <li>Item 5</li>
    <li>Item 6</li>
</ul>

<p>Category C</p>
<ul>
    <li>Item 7</li>
    <li>Item 8</li>
    <li>Item 9</li>
</ul>
4

1 に答える 1

2

あなたの問題はここにあります:

{% for item in ingrcat.list %}

あなたが持っている必要があります:

{% for item in category.list %}
于 2012-07-06T19:42:57.887 に答える