Django vs web2py初学者开发者
这两个框架中的哪一个更适合具有11个月经验的开发人员。 我决定为我的服务器端编码学习python,并想知道哪些更适合于我的技能水平的人。 我刚刚花了几天玩web2py,真的很喜欢它,我想知道如果Django提供更多的东西,我错过了吗?
PS。 更新:谢谢大家的精彩input,购买三本django书籍,并通过django和web2py的几个小项目/教程后,我已经解决了web2py。 这是一个很棒的框架,这使得网站开发真的很有趣。 我会build议所有新手学习这个框架,因为它将在未来成为主stream。 Django也是一个很好的框架,但是web2py在我有限的经验观点中只是更好。
(免责声明:我是web2py的项目负责人)
Django已经比web2py长了大约5年,因此它有更多的用户和更多的应用程序炫耀。 Django有他们所说的“admin”,它与web2py的“admin”不同,但更像web2py的“appadmin”。 Django的“admin”比web2py的“appadmin”更好,更可定制。 Django没有相当于web2py的“admin”。 (抱歉名称混淆)。
web2py更加紧凑,function更强大(支持更多的数据库,基于Web的IDE,票务系统,在没有补丁的GAE上运行,多种login方式,基于angular色的访问控制,基于Web的翻译界面,支持多个数据库连接,分布式交易等)。
对我来说,web2py最重要的function是自动迁移。 Django并没有提供它们。
对于web2py而言,长期的向后兼容性是安全性的一个主要目标。 Django在安全性方面与web2py相当(除了web2py在模板之前有CSRF阻止和默认转义),但是Django在1.0发布的时候破坏了向后兼容性。 web2py自2007年10月以来从未做过。
对我来说,web2py语法更自然:
db(db.tablename.fieldname <= value).select() # web2py Tablename.objects.filter(fieldname__lt=value) # Django
我不知道Django中没有的web2py的任何function。 我多次问过这个问题,因为如果有的话,我们想把它添加到web2py中,但是我还没有得到满意的答案。
当然,我们都做了些不同的事情。 Django遵循“显式优于隐式”。 web2py不是,而是遵循“一切都应该有一个默认的行为”。 我相信这使得web2py代码和configuration更加紧凑。
无论如何,无论你select什么,它们都是非常好的可靠的web框架,而且相似之处还是比较小的。 Django的开发人员非常聪明。
web2py社区非常友好。 您应该尝试在web2py google群组和Django群组上提出问题。 就像一个实验一样。
Django和web2py都是具有相似特性和function的优秀的“全栈”web框架,不pipe是哪一种框架的初学者,都不会“错过”。
如果你不了解你想要学习的东西,你很难回答你的问题。 有人会说学习框架有危险,而不是语言,所以最好先深入理解Python语言和更轻量级的框架(比如Flask或者wekzeug )。
话虽如此,web2py的初始学习曲线比Django低,因为它是专门devise的一个学习工具 。 所以我会说你已经做出了不错的select。 没有学习是永远浪费的,如果你决定以后还需要别的东西,那么使用web2py学到的好技术不会浪费。
尽pipeDjango有更多的学习资源,因为它的用户群更长,用户也更多,学习web2py的速度也很快,因为这本书很好,对用户群的问题几乎可以立即做出反应。
如果你正在寻找工作,那么Django的工作就更多了,这可能是一个因素。 话虽如此,web2py社区最近成立了专家解决scheme ,您可以在未来提升您的技能和可用性。
玩的开心!
我是一个Web2py和DJango的完全noob,但我想要一个python的Web框架,学习和创build一个简单的数据库的前端。 我看着web2py,但找不到任何体面的教程,针对完整的新手,当我得到了安装web2py,这是非常容易的,我不知道下一步该怎么做,似乎没有任何教程,指导我如何build立一个简单的networking应用程序,(不只是你好世界)。 另一方面,DJango 写了你的第一个DJango应用程序第1部分 。 这是非常好的,给新手介绍如何设置和使用框架通过编写一个简单的Web应用程序。 直到Web2Py提供这个,我的投票去了DJango。
换句话说:(就我所知)
Web2py确实更容易,使代码更简单,更清洁。 但是Django可以让你更好地理解正在发生的事情,而且还可以更好地修改devise/过程。
Web2py更注重“简单胜于复杂”,但Django更注重“显式优于隐式”。 Python的Zen的两个部分,所以很难说哪个框架更Pythonic。