Я думаю, что это зависит от определения того, что такое основа и что она должна делать для вас.
Как указывалось, минимальная «инфраструктура» будет WSGI, поскольку она определяет только один небольшой интерфейс для взаимодействия с веб-сервером. Но это мощный подход из-за промежуточного ПО, которое вы можете установить между вашим приложением и сервером.
Если вы хотите получить немного больше, например, некоторый URL-адрес для сопоставления функций, то у вас есть выбор, некоторые из которых уже упомянуты.
Если вы пойдете дальше, вы можете приехать в Пилоны или Турбогармы или Джанго, после этого может быть Zope, но он растет больше, а может быть, и боли, и вы всегда покупаете мнения об этих рамках.
То, что я недавно использовал все больше и больше (из Zope/Plone), является repoze.bfg. Он очень маленький, не поставляется с ORM в комплекте (так что вы можете использовать SQLAlchemy, Storm или просто перейти к базе данных объектов, например, ZODB). То, что он делает, - это в основном обработка того, как вы попадаете из URL-адреса в представление, которое является функцией. Он поддерживает как сопоставление URL (a la Routes), так и обход объекта, что IMHO очень мощно в некоторых случаях, особенно. если у вас есть не очень строгая карта. Хорошо, что он напрямую связан с системой безопасности на основе ACL, которая может использоваться, если вы хотите, чтобы ИМХО было очень практично. Таким образом, вам не нужны декораторы, которые, по-видимому, используются в основном для таких вещей.
И, конечно, он основан на WSGI. Также обратите внимание на repoze subversion repository для довольно много промежуточного программного обеспечения, а вещи Paste также очень полезны для задач, связанных с WSGI.
Веб-разработка с Django IS прямолинейна. Извините, пришлось это сделать. Я не понимаю, что не нравится в Django. –
Если вы делаете это менее оскорбительным, вы, вероятно, не получите ни малейшего внимания. – Malfist
Как это сообщение оскорбительно? Это, конечно, не оскорбительно. – Blorgbeard