Django в одном файле!

Я тут размышлял на тему зачем нужен Flask (или другие микрофреймворки). И пришел к мысли, что единственный повод использовать Flask — если приложение настолько маленькое, что умещается в одном файле. А ведь в Django пустой проект — это уже нагромождение из нескольких файлов и папок. Для совсем крошечного приложения это пожалуй излишество.

И пока я думал. Мне в голову пришла мысль — дак ведь и Django, может работать из одного файла. В туториалах это конечно не описано, но для запуска тестов django-приложений у меня подобная схема уже используется.

Барабанная дробь! Запускаем Django-проект из одного файла! Та-да!

#!/usr/bin/env python
import os
import sys
from django.conf import settings
from django.conf.urls import patterns, include, url
from django.http import HttpResponse
 
filename = os.path.splitext(os.path.basename(__file__))[0]
 
urlpatterns = patterns('',
    url(r'^$', '%s.home' % filename, name='home'),
)
 
def home(request):
    return HttpResponse('Django rules!')
 
if __name__ == "__main__":
    settings.configure(
        DEBUG=True,
        MIDDLEWARE_CLASSES = [],
        ROOT_URLCONF=filename
    )
 
    from django.core.management import execute_from_command_line
    execute_from_command_line([sys.argv[0], 'runserver'])

Все отлично работает. Теперь поводов использовать Flask не осталось и вовсе.
Кода конечно немного больше чем на Flask, но у проетов всегда есть потенциал вырасти, в этом случае мы легко сможем использовать огромное количество готовых приложений!
Примечание: запускал на Django 1.7.