sul*_*tan 26 python django scaffolding
Django 有足够的脚手架吗?
它可能是在新发布的1.3版本中,但我还没有找到它.
new*_*000 19
我看起来还没有找到适合Django的东西,就像Rails Generate命令一样.Django有一点不同的哲学.它为您提供了轻松完成工作的工具,但实际上并不适合您(管理界面除外).在宏伟的计划中,我认为这是可以的.当我使用rails的脚手架时,我不能经常保留很多自动生成的东西.当我这样做时,django管理界面可能也会工作并给我更多功能.
相反,我建议阅读Django教程第4步,其中介绍了通用视图,然后阅读介绍表单的Django书的第7章.你必须对第7章保持耐心,因为作者认为你想要在他们教你简单方法之前就知道困难的细节.(尝试在页面中搜索短语django.forms)
最后,你需要在rails和django之间做的工作量相等,而Django可能会略微减少.但是,您没有一个命令可以自动为您提供样板代码作为基础.
所以Django 1.3仍缺乏"脚手架"功能.不好.脚手架中最好的是它允许开发人员立即从项目开始,而不会回忆所有"模型","网址"和"视图"语法.
看看这个例子,让我们开始新项目和app:
$django-admin startproject mysite
$python manage.py startapp blog
Run Code Online (Sandbox Code Playgroud)
现在我们需要从几乎空的文件中手动"启动"所有内容.但这样做会非常方便(比如在铁轨中)
$python manage.py scaffold app:blog model:Post title:string content:text
Run Code Online (Sandbox Code Playgroud)
这应该给我们:models.py
class Post(models.Model):
title = models.CharField
content = models.TextField
Run Code Online (Sandbox Code Playgroud)
views.py
def index(request):
posts = Post.objects.all().order_by('-id')
return render_to_response('blog/index.html', {'posts': posts})
Run Code Online (Sandbox Code Playgroud)
并以某种方式更新urls.py,...或不,这更复杂但不太需要.
在将来的Django版本中,这应该不难实现.如果我在Django有足够的知识和经验,我会这样做.不幸的是,我没有做很多Django项目,这就是我需要这个功能的原因.
| 归档时间: |
|
| 查看次数: |
15050 次 |
| 最近记录: |