моделирование взаимоотношений данных и Django

Этот вопрос может быть очень простым, но, хоть убей, я не могу сегодня об этом разобраться ...

На работе меня попросили изучить Django, поэтому я надел Моя шапка и последние пару дней работали над туториалами и тому подобным. однако у меня есть проблема, с которой я могу справиться.

У меня есть эта базовая модель данных:

table1

Datasets - Id, Name

table2

subcatergory - id, dataset_id, name

table3

subcatergory value - id, subcat_id, value

, поэтому 1 набор данных может иметь много подкатегорий, а 1 подкатегория может иметь много значений.

в django у меня есть это:

class Dataset(models.Model):
    name = models.CharField(max_length=150)
    def __unicode__(self):
        return self.name

class SubCat(models.Model):
    dataset = models.ForeignKey(Dataset)
    name = models.CharField(max_length=100)
    def __unicode__(self):
        return self.name

class SubCatVal(models.Model):
    subcat = models.ForeignKey(SubCat)
    value = models.CharField(max_length=100)

в views.py, когда я его тестирую (я просто атм просто хочу заполнить несколько ящиков), если я делаю d = Dataset.objects.all () то объект d не знает подкатегорий?

Итак, если бы я хотел все это, мне пришлось бы сделать:

d  = Dataset.objects.all();
s  = SubCat.objects.all();
sv = SubCatVal.objects.all();

тогда в html сделайте что-нибудь вроде

{% for d in  dataset %}
    {% for s in subcat %}
        {% if s.dataset_id == d.id %}
            //add {{s.name}} to a select box
        {% endif %}
    {% endfor %}
{% endfor %}

. Это способ сделать это? или я полностью упустил какой-то трюк?

спасибо

0
задан second 11 January 2012 в 14:12
поделиться