Так что в Django 1.3 по-прежнему не хватает функциональности «скаффолд». Нехорошо.
Что лучше в скаффолде, так это то, что он позволяет разработчику немедленно начать проект, не вызывая все синтаксисы 'models', 'urls' и 'views'.
Посмотрите на этот пример, давайте начнем новый проект и приложение:
$django-admin startproject mysite
$python manage.py startapp blog
и теперь нам нужно вручную «НАЧАТЬ» все, из почти пустых файлов.
НО было бы очень удобно делать это таким образом (как в рельсах)
$python manage.py scaffold app:blog model:Post title:string content:text
Это должно дать нам:
models.py
class Post(models.Model):
title = models.CharField
content = models.TextField
views.py
def index(request):
posts = Post.objects.all().order_by('-id')
return render_to_response('blog/index.html', {'posts': posts})
и каким-то образом обновлять urls.py, ... или нет, это более сложно, но менее необходимо.
Это не должно быть сложно реализовать в будущих выпусках Django. Я бы сделал это, если бы у меня было достаточно знаний и опыта в Джанго. К сожалению, я не делаю много проектов Django, и поэтому мне нужна эта функциональность.