sim3x: Утверждение никогда не делать касалось только кода мидла? Пример был взят на скорую руку. За Ваш пример спасибо. В остальном, в чем так уж плохи редиректы на уровне django кроме очевидной проблемы со скоростью?
sim3x: Вы просто объясните чем плохо решение, не на уровне категорий: черное,белое. Причем я не в защиту своего решения,а дабы разобраться в вопросе, кроме скорости к примеру в чем объективные минусы? То что делать редиректы на уровне веб-сервера дешевле, не оспаривается. А в остальном, по велосипедам, там только один мидл, остальное из коробки так сказать.
Наверно в чем то Вы правы, но иногда в силу тех или иных обстоятельств доступа к конфигам нет и какие на сей счет будут варианты? В данном случае это вопрос по теме, дабы не создавать новый.
blazer05: https://docs.djangoproject.com/ja/1.9/topics/auth/... почитайте, я думаю так будет лучше. И отредактируйте вопрос со всеми ошибками и прочим, чтобы на него можно было дать ответ. Ответ еще кому то может помочь, а читать портянку переписки никто не будет , да и вопрос не отмечен как решенный.
blazer05: А Вы откатывали миграции или просто удалили и создали новые? Потому как судя по выводу, он их просто не применяет, а это может быть в случае если в таблице с историей миграций они уже имеются.
blazer05: Смотрите какой у Вас тип таблица auth_user, если он MyISAM то и userprofile должен быть такой же, но на мой взгляд лучше укажите принудительно в settings тип таблиц по примеру
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME': '',
'USER': '',
'PASSWORD': '',
'OPTIONS': {
"init_command": "SET storage_engine=MYISAM",
}
}
}, откатите миграции и накатите заново, посмотрите пропадет ли 150 ошибка. Если текущие пользователи критичны, то сделайте фикстуру через manage.py dumpdata
blazer05: а у вас случаем таблички не с разным типом(MyISAM, innoDb) создаются, а то может имеет смысл опцию добавить в settings 'OPTIONS': {
"init_command": "SET storage_engine=тип",
},
blazer05: Смотрите, когда вы создаете миграцию, то на основе предыдущих миграций создается новая. Если например у вас миграции где создается данная таблица нет, то он при создании новой в метод forward добавит код для ее создания. Что у вас выдает migrate название приложения --list?.