Там есть аналогичный вопрос здесь - Raw query must include the primary keyДжанго - Сырой запрос должен включать в себя первичный ключе
Однако я убегал из устаревшей БД и, следовательно, не могу понять, что вопрос с первичным ключом.
Это мой RAW запрос -
trg = Trgjob.objects.db_manager('AdmiralDEV').raw("""
SELECT jobdep_id, jm.jobmst_id, jobdep_type, (jm1.jobmst_prntname + '\' + jm1.jobmst_name) AS jobdep_jobmst,
jobdep_operator, jobdep_status, jobdep_joblogic, jobdep_ingroup, jobdep_dateoffset, jobdep_instoffset,
jobdep_canignore, jobdep_filename, jobdep_filetype, jobdep_fileextent, nodmst_id, varmst_id, jobdep_value
FROM Jobdep jd
INNER JOIN Jobmst jm ON jd.jobmst_id = jm.jobmst_id
INNER JOIN Jobmst jm1 ON jd.jobdep_jobmst = jm1.jobmst_id
WHERE jm.jobmst_id = 9878""")
На БД работает отлично, но в Джанго я получаю отказ -
сырье запрос должен включать первичный ключ
Первичный ключ на этой модели находится «jobdep_id», как показано на models.py здесь -
class Jobdep(models.Model):
jobdep_id = models.IntegerField(primary_key=True)
Что такое 'Trgjob'? – sk1p