Если Вам нравится ORM Django, он отлично прост в использовании это "автономный"; я имею описанный несколько методов для использования частей Django за пределами веб-контекста , и Вы свободны использовать любого из них (или самокрутка).
Shane выше, кажется, немного дезинформирован на этом и нескольких других точках - например, Django может делать несколько различных баз данных, он просто не делает значение по умолчанию к тому (необходимо сделать пользовательского менеджера на моделях, которые используют что-то другое, чем "основной" DB, что-то, что это не слишком твердо и существуют рецепты, плавающие вокруг для него). Это верно, что Django само не делает управления соединениями / организация пула подключений, но лично я всегда использовал внешние инструменты для того так или иначе (например, pgpool
, который качается тяжелее, чем что-нибудь встроило к ORM, когда-либо мог).
я предложил бы провести некоторое время, читая и возможно пробуя несколько вероятных поисков Google (например, сообщение, которое я связал, Вы к предстаете как главный результат перед "автономным сценарием Django") получить ощущение того, что на самом деле лучше всего удовлетворит Вашим потребностям и вкусам - это может быть ORM Django, не является правильным для Вас, и Вы не должны использовать его, если это не, но к сожалению существует большая дезинформация там, которая пачкает воды.
Редактирование для ответа на Shane:
Снова, Вы, кажется, дезинформированы: SQLAlchemy должен быть настроен (т.е. сказан, какой DB использовать, как соединиться, и т.д.), прежде чем Вы будете мочь выполнение запросов с ним, поэтому как то, то, что Django нужна подобная конфигурация (выполненный через Ваш выбор методов - у Вас разве не должно быть полного файла настроек Django), какой-либо недостаток?
Что касается нескольких поддержка БД, Вы, кажется, смущены: поддержка там на низком уровне. Объект запроса - не QuerySet
, но лежание в основе Query
объект, который это выполнит, знает, какой DB это подключает с и принимает соединение с БД как один из его аргументов инициализации. Сообщение одной модели использовать один DB и другую модель для использования другого так же просто как установка одного метода на менеджере, который передает правильную информацию о соединении в Query
. Правда, нет никакого высокоуровневого API для этого, но это не то же как "никакая поддержка" и не то же, поскольку "требует пользовательского кода" (если Вы не утверждали бы, что конфигурирование нескольких DBS явно в SQLAlchemy, потребовало, если Вы хотите несколько DBS, также "пользовательский код").
Что касается того, заканчиваете ли Вы косвенно вещи использования, которые не находятся в django.db
, ну, в общем, и что? то, что django.db
биты импорта, скажем, django.utils
, потому что существуют структуры данных и другие биты кода, которые полезны для больше, чем просто, ORM прекрасен, что касается меня; можно было бы также жаловаться, имеет ли что-то внешние зависимости или использует стандартные библиотеки Python вместо того, чтобы быть на 100% автономным.
Swift 4.2 / 5
override func viewDidLoad() {
super.viewDidLoad()
NotificationCenter.default.addObserver(self, selector: #selector(willEnterForeground),
name: Notification.Name.UIApplicationWillEnterForeground,
object: nil)
}
@objc func willEnterForeground() {
// do what's needed
}