Создание модели Django для существующего представления базы данных/SQL?

StackOverflow https://stackoverflow.com/questions/2245956

  •  20-09-2019
  •  | 
  •  

Вопрос

Я вставил определение для представления в $ template_dir/sql/$ file file.sql. (Создайте или заменяйте представление) Поэтому каждый раз, когда я запускаю syncdb, представления БД созданы.

Могу ли я создать в моделях.

Лучше ли просто использовать необработанные функции SQL от Python?

---РЕДАКТИРОВАТЬ---

Еще одна проблема, с которой у меня есть, в том, что у представления нет первичного ключа, но, кажется, Джанго предполагает, что будет его, потому что я получаю ошибку caught an exception while rendering: (1054, "Unknown column 'appName_currentleagues.id' in 'field list'") Но у меня нет такого участника определено:

Class CurrentLeagues(models.Model):
        League = models.ForeignKey(League)
        class Meta:
                managed = False

Поэтому я предполагаю, что Джанго разумно видит, что я не определяю первичный ключ в классе CurrentLeagues, поэтому Джанго предполагает, что есть один, который называется id. Анкет Есть ли способ сказать Джанго, что нет первичного ключа (поскольку это на самом деле мнение), или это даже не моя проблема?

Это было полезно?

Решение

Видеть Недальнонированные модели

Вы определяете модель как обычно и добавляете managed = False на мета -варианты:

class MyModel(models.Model):
    ...
    class Meta:
         managed = False

Другие советы

Попробуйте использовать Python Manage.py InspectDB или Python Manage.py InspectDB> models.py

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top