Действительно ли возможно выполнить файл представления с помощью Django Model и Формы за пределами среды Django?
Это возможно. Django довольно хорош тем, что является прямым питоном без особой магии, так что вы обычно можете разделить вещи. Представления - это просто функции, и их можно вызывать из любого другого кода python.
Чтобы использовать ORM, вам придется настроить окружение django в вашем скрипте. Просмотр файла "manage.py" показывает, как это сделать:
from django.core.management import setup_environ
import settings
setup_environ(settings)
Теперь вы можете вызывать любое представление, какое захотите:
from myapp.views import some_view
some_view(...)
Помните, что по правилам функции представления должны принимать объект HttpRequest в качестве первого параметра и возвращать объект HttpResponse. Вы можете создать объект запроса самостоятельно:
from django.http import HttpRequest
result = some_view(HttpRequest(), ...)
Но если вы действительно не заинтересованы в использовании объектов HttpResponse или HttpRequest, возможно, вам просто не следует называть свои методы "представлениями". Может быть, это "утилиты" или что-то еще. Ничего из этого не навязывается Django, но это хорошая форма - следовать подобным соглашениям, чтобы другие программисты могли читать ваш код.
Правка: 2010-05-24: Исправлено "setup_environ" (ранее ошибочно было "execute_manager"). Reference.