Как я могу получить полный контроль, когда я выполнил отношения «многие к одному»? - PullRequest
0 голосов
/ 13 июня 2018
class EbConfig(models.Model):
    id = models.IntegerField(primary_key=True)
    specific_field_config_id = models.IntegerField()
    judge_result = models.CharField(max_length=50)


class EbResult(models.Model):
    eb_config = models.ForeignKey(EbConfig, on_delete=models.CASCADE)
    cc_log_info_base_id = models.BigIntegerField(primary_key=True)
    eb_config_id = models.IntegerField()

result = EbResult.objects.filter(...)...

После выполнения моего условия я получил QuerySet с именем "result".Когда я ввожу:

result.select_related('eb_config').values()

я получаю что-то вроде этого:

<QuerySet [{'eb_config_id': 1, 'cc_log_info_base_id': 10001},...>

Но то, что я хочу получить, выглядит так:

"<QuerySet [{'eb_config_id': 1, 'cc_log_info_base_id': 10001, 'id ':'', 'specific_field_config_id ':'', 'judge_result ':''},...>"

Что я могусделать, чтобы получить это?Я знал, что могу получить объект EbConfig следующим образом:

list(test)[0].eb_config

Но то, что я действительно хочу, - это полное слово EbConfig INNER JOIN EbResult.Когда я печатаю result.query, я нахожу правильное предложение SQL, которое может успешно выполняться в MySQL, и получаю ожидаемый результат.

1 Ответ

0 голосов
/ 15 июня 2018
...