Форум сайта python.su
Заметил одну особенность работы Django с бд:
Если имеется модель:
class Units(models.Model):
status = models.PositiveSmallIntegerField(default=0)
name = models.CharField(max_length=64)
price = models.IntegerField(default=0)
То после миграции в базу порядок расположения полей будет другой:
name
price
status
Фактически, Django выстроил их так: вначале текстовые поля, затем числовые в порядке уменьшения разрядности.
Кто-нибудь знает, на чём основана такая логика работы?
Есть ли возможность запретить Django менять порядок полей в базе?
Офлайн
oleg.p
А какой для вас смысл имеет порядок полей в БД?
Офлайн
FishHook
oleg.pА какой для вас смысл имеет порядок полей в БД?
Офлайн
oleg.pВ смысле “проще отрабатывать запросы”, потрудитесь выражать свои мысли яснее.
и отрабатывать sql-запросы существенно проще, когда чередование полей основано на логике, а не на прихотях фреймворка.
Офлайн
FishHook
Офлайн
oleg.pЧто “через консоль базы данных”?
Через консоль базы данных
Офлайн
FishHook
Что “через консоль базы данных”?
Слушайте, мы в первом классе что ли? Вы можете четко формулировать свои посты?
Офлайн
oleg.pЭто не ответ на вопрос на техническом форуме.
потому что надо
Офлайн
FishHook
FishHook
Я прошу дать пример, когда вам нужен порядок столбцов.
Офлайн
oleg.pобязательно знает, думаю Вы и сами сможете узнать, исходники открыты и доступны
Кто-нибудь знает, на чём основана такая логика работы?
oleg.pДумаю нет.
Есть ли возможность запретить Django менять порядок полей в базе?
Офлайн