Найти - Пользователи
Полная версия: в таблице модели отсутствует поле id
Начало » Django » в таблице модели отсутствует поле id
1
Mironoff
Здравствуйте!
Есть сторонний проект на PHP + MySQL, есть задача сделать административную часть на Django. Сделал inspectdb, но столкнулся с проблемой, в структуре одной из таблиц проекта, отсутствует поле ID (и это не ошибка, это поле действительно отсутствует, причем проект на PHP нормально с этим работает).

после inspectdb получил следующий код моделей:
class Products(models.Model):
    ...
    
class Charact(models.Model):
    ...
class ProdChar(models.Model):
    prod_id = models.ForeignKey(Products)
    char_id = models.ForeignKey(Charact)
    value = models.TextField()

В оригинальной таблице для ProdChar отсутствует поле id. И при любой попытке работы с этой таблицей вылазит ошибка “(1054, ”Unknown column ‘prod_char.id’ in ‘field list’“)”
Естественно, стандартная админка Django также ругается с этой же ошибкой.

Изменять структуру таблиц я не могу, а работать с этой таблицей очень нужно. Но как?

ad3w
А почему нельзя изменять структуру таблиц?
ad3w
Mironoff
Изменять структуру таблиц я не могу, а работать с этой таблицей очень нужно. Но как?
Добавить id через mysql.
Mironoff
К сожалению, добавить id нельзя. Это я попробовал в первую очередь. с внешней стороны (отображение) работает на PHP и при добавлении поля оно валится.
Mironoff
я бы конечно руки повыдергивал такому php'шнику, который так сделал, но…
ad3w
Тогда добавьте
primary_key=True
на любое уникальное поле в модели.
Mironoff
тоже об этом думал. :) только вот нет там уникального поля.
уникальна только комбинация prod_id + char_id
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB