как выбрать значения из объединенной таблицы? - PullRequest
0 голосов
/ 30 сентября 2019

У меня есть две модели,

class model_1(models.Model):
    id = models.IntegerField(primary_key=True)
    tableName = models.CharField(max_length=20, default=None)

    class Meta:
        db_table = "table1"

class model_2(models.Model):
    id = models.IntegerField(primary_key=True)
    tableId = models.ForeignKey(model_1, on_delete=models.CASCADE, db_column='tableId')

    class Meta:
        db_table = "table2"

я выполняю,

queryset = model_2.objects.select_related('tableId').values('tableName').annotate(tcount=Count('tableId'))

Я хочу следующий запрос

select table1.tableName, count(table2.tableId) from table2 INNER JOIN `table1` ON (`table1`.`id` = `table2`.`tableId`) group by table2.tableId; 

, но он мне дает,

django.core.exceptions.FieldError: Cannot resolve keyword 'tableName' into field. Choices are: tableId, id

Спасибо за ваши предложения

...