Подтвердить что ты не робот

SQLAlchemy и django, готово ли это производство?

Кто-нибудь использовал SQLAlchemy в дополнение к Django ORM?

Я хотел бы использовать Django ORM для манипулирования объектами и SQLalchemy для сложных запросов (например, для тех, которые требуют левого внешнего объединения).

Возможно ли это?

Примечание. Я знаю о django-sqlalchemy, но проект, похоже, не готов к производству.

4b9b3361

Ответ 1

Что я буду делать,

  • Определите схему в Django orm, дайте ей написать db через syncdb. Вы получаете интерфейс администратора.

  • В представлении1 вам нужно сложное соединение


    def view1(request):
       import sqlalchemy
       data = sqlalchemy.complex_join_magic(...)
       ...
       payload = {'data': data, ...}
       return render_to_response('template', payload, ...)

Ответ 2

Я не считаю хорошей практикой использовать оба. Вы должны либо:

  • Используйте Django ORM и используйте специальный SQL, где встроенная генерация SQL Django не отвечает вашим потребностям, или
  • Используйте SQLAlchemy (который дает вам более тонкий контроль по цене дополнительной сложности) и, если необходимо, используйте декларативный уровень, например Elixir сделать жизнь немного легче.

Конечно, если вам нужен администратор Django, рекомендуется использовать первый из этих подходов.

Ответ 3

Я сделал это раньше, и все в порядке. Используйте функцию SQLAlchemy, где она может считываться в схеме, поэтому вам не нужно дважды объявлять свои поля.

Вы можете получить настройки соединения из настроек, единственная проблема - это такие вещи, как разные варианты драйвера postgres (например, с помощью psyco и без него).

Это стоит того, что материал SQLAlchemy намного лучше подходит для таких вещей, как объединения.

Ответ 4

Якоб Каплан-Мосс признался, что время от времени вводит "импортную sqlalchemy". Я могу написать адаптер набора запросов для результатов sqlalchemy в не слишком отдаленном будущем.

Ответ 5

В настоящее время вы можете использовать Aldjemy. Подумайте об использовании этого учебника.