По-моему, get_profile() мало где используется ввиду своей ущербности. Да и не о нём речь, а о приложениях, в которых захардкожена ссылка на User:
from django.contrib.auth.models import User
class Blog(models.Model):
user = models.ForeignKey(User)
А ведь есть ещё и всякие django-registartion и аналоги, где создаются объекты именно auth.User. Существенная часть приложений, возможно даже хороших, станет несовместимой.
Непонятно только, что теперь делать с кучей старых но вполне качественных приложений. Некоторые из них уже и не поддерживаются, но вполне себе работают.
Мне подход фабрика как-то больше нравится, если честно. Гораздо круче, когда одной командой со своей машины можно получить полностью рабочий проект на новеньком сервере.
Мне как-то спокойнее, когда проекты разрабатываются в девственно чистых окружениях, изолированных от системного. Это гарантирует, что слепок окружения (pip freeze) покажет те и только те пакеты версий, которые используются в проекте. Удобно :-)
Ради такой независимости пакетов можно и gcc потерпеть, и кучу dev-пакетов с заголовочниками. Лежат себе, каши не простят.
Самое простое — разные версии какого-либо пакета. К примеру, проекту нужен именно psycopg2==2.4.1 (после этой версии что-то поменяли в механизме транзакций), а в пакете будет самый свежий, 2.4.5.
Установкой MySQL-python не Fabric занимается, а pip:
run('pip install MySQL-python')
Если в системе будут найдены требуемые h-файлы, за милую душу соберёт. А ещё ведь и easy_install есть, он, кажется, умеет и из бинарных сборок ставить.
Решать проблему заранее, может, и не следует. А вот от канонических дыр лучше бы закрыться. Кстати, забыл спросить, а почему в том примере айдишник берётся из request.POST?
Спасибо. Но даже если и использовать, всё равно как-то грустно, что придётся подключать django-braces для микшинов, django-annoying для get_object_or_None и django-extensions для чего-нибудь ещё.
Вот бы один метапакет, в котором это всё в одном месте было… Не совсем джанго-вэй, конечно, но его можно разбить на аппы и подключать только нужное:
А ведь есть ещё и всякие django-registartion и аналоги, где создаются объекты именно
auth.User
. Существенная часть приложений, возможно даже хороших, станет несовместимой.Непонятно только, что теперь делать с кучей старых но вполне качественных приложений. Некоторые из них уже и не поддерживаются, но вполне себе работают.
Мне подход фабрика как-то больше нравится, если честно. Гораздо круче, когда одной командой со своей машины можно получить полностью рабочий проект на новеньком сервере.
Ради такой независимости пакетов можно и gcc потерпеть, и кучу dev-пакетов с заголовочниками. Лежат себе, каши не простят.
Если в системе будут найдены требуемые h-файлы, за милую душу соберёт. А ещё ведь и easy_install есть, он, кажется, умеет и из бинарных сборок ставить.
Что, однако, не отменяет моего подозрения об ошибке в базе, а наоборот, усиливает.
Город определился почти верно, к нему претензий нет: в конце концов, такие записи почти во всех базах RIPE. Но почему на карте Украина? :-)
get_object_or_None
и django-extensions для чего-нибудь ещё.Вот бы один метапакет, в котором это всё в одном месте было… Не совсем джанго-вэй, конечно, но его можно разбить на аппы и подключать только нужное:
Вроде и красиво, и зависимостей не плодит.