Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/285.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
用于基于Python的Web开发的Django替代方案?_Python_Django_Openid - Fatal编程技术网

用于基于Python的Web开发的Django替代方案?

用于基于Python的Web开发的Django替代方案?,python,django,openid,Python,Django,Openid,我即将启动一个新的个人web/iphone应用程序项目,该项目要求: 在后端存储数据 通过openid对用户进行身份验证 生成用于读取和写入数据的基于JSON的API 我通常在所有项目中都使用Django,但我想借此机会学习一些新的东西。那么,他们有没有基于Python的web开发框架可以很好地替代Django?理想情况下,在上面列出的几点上有优势的 如果框架是: 轻量级 易于安装、部署和开发 有什么建议吗?使用web.py可以在非常简单的URL处理和许多内置功能中找到,但重量仍然很轻我

我即将启动一个新的个人web/iphone应用程序项目,该项目要求:

  • 在后端存储数据
  • 通过openid对用户进行身份验证
  • 生成用于读取和写入数据的基于JSON的API
我通常在所有项目中都使用Django,但我想借此机会学习一些新的东西。那么,他们有没有基于Python的web开发框架可以很好地替代Django?理想情况下,在上面列出的几点上有优势的

如果框架是:

  • 轻量级
  • 易于安装、部署和开发

有什么建议吗?

使用web.py可以在非常简单的URL处理和许多内置功能中找到,但重量仍然很轻

我只使用过Django,我喜欢它,但这里还有一些其他的建议(我认为Flask是你最好的选择,它是一个非常小和非常轻量级的web应用程序)

瓶子 “Flask是基于Werkzeug、Jinja 2和善意的Python微框架。” -

塔架 “Pylons项目将开发一系列相关技术,而不是专注于单一的web框架。Pylons项目的第一个包是Pyramid web框架。随着时间的推移,其他软件包已添加到集合中,包括更高级别的组件和应用程序。我们希望将该项目发展成为一个由经过良好测试、记录良好、易于互操作的组件组成的生态系统。”

格罗克 “Grok是Python开发人员的web应用程序框架。它面向初学者和经验丰富的web开发人员。Grok强调敏捷开发。格罗克很简单,也很强大

涡轮齿轮 “TurboGears将帮助您创建一个数据库驱动的、可在几分钟内扩展的应用程序。所有这些都包含了与编写函数一样自然的代码、设计友好的模板、浏览器端和服务器端的简易AJAX以及功能强大且灵活的对象关系映射器(ORM)。”

更多Python框架资源 在进一步挖掘之后,我找到了这个资源:

我已经用过几个小项目,非常喜欢它

它非常轻量级,有很好的文档,根据我的经验,部署起来非常简单。 我从来没有用过Django,所以我不确定它的比较

几个hello worlds:

def hello1():
    return "Hello World"


def hello5():
    return HTML(BODY(H1(T('Hello World'),_style="color: red;"))).xml() # .xml to serialize

def hello3():
    return dict(message=T("Hello World"))
hello3
的相应视图:

{{extend 'layout.html'}}
<h1>{{=message}}</h1>
{{extend'layout.html}
{{=message}