Форум сайта python.su
scopichol
Куда еще подталкивать? Я вроде все написалТОлько что заметил опечатку. Многие ко многим не нужно
Офлайн
Тогда опубликуйте схему БД
Офлайн
Не знаю как сделать это визуально. Примерно так она выглядит.
Таблица_tab_manufacturer
- id
- name
Таблица_tab_model
- id
- name
Таблица_tab_replication
- id
- year
- id_manufacturer
- id_model
Тоесть по таблица с производителями связана с таблицей моделей через id в таблице replication.
Офлайн
class Manufacturer(models.Model): name = models.CharField(max_length=50) carmodels = models.ManyToManyField('CarModel', through='Replication') def __unicode__(self): return u'%s' % self.name class Meta: db_table = 'tab_manufacturer' class CarModel(models.Model): name = models.CharField(max_length=50) manufacturers = models.ManyToManyField(Manufacturer, through='Replication') def __unicode__(self): return u'%s' % self.name class Meta: db_table = 'tab_model' class Replication(models.Model): year = models.CharField(max_length=50, db_column='year') carmodel = models.ForeignKey(CarModel, db_column='model_id') manufacturer = models.ForeignKey(Manufacturer, db_column='manufacturer_id') def __unicode__(self): return u'%s %s %s' % (self.carmodel.name, self.manufacturer.name, self.year) class Meta: db_table = 'tab_replication'
item = Manufacturers.objects.filter(pk=id) entries = item.carmodels.all()
entries = item.replication_set.all()
Отредактировано scopichol (Ноя. 7, 2014 11:45:21)
Офлайн