class dbview(models.Model):
# field definitions omitted for brevity
class Meta:
db_table = 'read_only_view'
def main(request):
result = dbview.objects.all()
перехвачено исключение во время рендеринга: (1054, «Неизвестный столбец„ read_only_view идентификатор“в„списке полей“»)Джанго: Запросы чтения только просматривать, без первичного ключа
Существует нет первичного ключа Я вижу в представлении. Есть ли обходной путь?
Комментарий:
У меня нет контроля над представлением, с которым я обращаюсь с Django. В браузере MySQL отображаются столбцы, но первичный ключ отсутствует.
Большое вам спасибо, это действительно полезно! – dmi
Очень полезно. Одно добавление; если столбец, который вы хотите использовать для первичного ключа, является CHAR-типом, он не может превышать 255 символов. –
На самом деле это не относится к вопросу, относящемуся к представлению db, а не к таблице. Вы указываете одно из своих полей как pk для django, независимо от того, является оно или нет. Вы можете уйти от этого, так как никогда не будет никакой вставки/обновления в отношении через ORM. См. [Ответ от David S] (http://stackoverflow.com/a/11594959/519015) и мой комментарий по этому поводу для получения дополнительной информации об этой технике. –