Django 状态更新:6月26日
大家好,欢迎回到我们定期发布的 Django 状态报告。过去,开发团队成员会抽出时间每周发布这些简讯。但随着他们越来越忙于 Django 本身、日常工作、一本书以及一些副项目,他们无法像以前那样多地贡献。包括我自己在内的许多人觉得这些帖子为 Django 社区增添了很多价值,所以我主动提出帮忙,于是就有了今天的报告!
闲话少说——让我们来看看过去大约 90 天左右的更新吧。
- Django-fr 网站于上周上线。该网站的创建者 David Larlet 在 django-users 邮件列表中发布了公告:“该网站旨在提供文档翻译、有用的链接,当然还有创建本地社区!”随着越来越多的用户了解并参与贡献翻译,该网站仍在不断发展,翻译稿件将经过审核流程。Django-fr 小组还在他们的Django-fr 邮件列表和 irc.freenode.net 上的 #django-fr 频道协调工作。
- 法国 Django 社区的网络平台上线的消息,促成了另一个面向西班牙语 Django 用户的组织的创建,即Django En Español。该社区仍处于早期阶段,将在django-es邮件列表以及 irc.freenode.net 上的 #django-es 频道协调社区活动。
- Ville Säävuori 深入研究了Capistrano,并创建了一个用于远程部署 Django 应用程序的脚本。如果您只在部署 Rails 应用程序的上下文中听说过 Capistrano,您可能会惊讶地发现它是一个用途更广泛的工具。Ville 的脚本将登录远程服务器,运行
svn update
,如果对模型进行了更改,则备份并安装新的数据库信息,将您的settings.py
文件移到适当位置,然后重新加载 Apache。使用 Capistrano 执行此类任务的最大好处是,如果出现任何问题,您可以随时回滚部署,这在将新的更改部署到生产服务器时是绝对必要的。 - Adrian Holovaty 在2006 年 4 月 8 日的每周更新中提到了创建 Django 的新unicode 分支。大约一个月前,Malcolm Tredinnick 宣布该分支的功能基本完善,需要测试人员。错误修复过程仍在进行中,看起来该分支计划在 Oracle 分支合并到主干几周后合并。如果您还没有参与,请加入进来,如果您有兴趣在 Django 中获得更好的 Unicode 支持,请试用一下。
- 相关新闻是,上面提到的 Oracle 分支已于 2006 年 6 月 23 日合并到主干。自从 Django 成为一个公共的开源项目以来,Oracle 支持就一直被提上日程。事实上,Jason Huggins 提供的基本 Oracle 支持补丁 是近两年前添加到 Django 的 Trac 实例的前 100 个工单之一。随着Magic-Removal的引入,此功能被破坏,随后在新的补丁中修复。尽管做出了这些努力,但错误仍然存在,并且功能缺失。科罗拉多前山脉 Python 爱好者 组织了 2006 年 11 月初的Boulder Sprint,以推动 Django 的 Oracle 支持成为框架中一个完全功能的部分。这次冲刺产生了boulder-oracle-sprint 分支,它极大地改进了 Oracle 支持。自这次冲刺以来,关于表空间、返回类型和其他各种细节的许多错误修复已经完成。所有这些最终导致了上周末 boulder-oracle-sprint 分支合并到主干,并将其不可避免地包含在 1.0 里程碑版本中。我们应该祝贺上面提到的每一个人和团体,特别是科罗拉多前山脉 Python 爱好者,感谢他们启动了新的分支并将其推进到完成。大家做得很好!
- 上个月,有人添加了一套非常不错的工具,用于将您的 Django 应用程序与亚马逊的简单存储服务(S3)集成。亚马逊的 S3 本质上是一个非常便宜、高可用且易于连接的网络文件存储系统。它提供REST和SOAP用于添加文件,同时支持HTTP(默认)和 BitTorrent 作为下载协议。Django 的 AmazonSimpleStorageService 模块实现为一种新的 FileField 类型,即
S3FileField
。作者以这样的方式实现了该字段:在您的应用程序或管理界面中,它向用户呈现为标准的文件上传字段。此外,作者评论说该代码尚未经过广泛测试,因此在生产环境中使用之前,您应该谨慎操作(并贡献错误修复!)。 - 在 Django 元宇宙中添加一个新的书签:DjangoSites 在过去一周左右启动,其目标是提供一个由 Django 驱动的网站索引,并带有一丝“Web 2.0”的风格。在撰写本文时,该网站目前正在跟踪 114 个网站,这些网站可以像 Digg 一样进行投票。您可以通过多种参数查看网站,包括“最新”、“评分最高”和“评论最多”。
- 上月末,James Bennett发布了一段代码,他最初是为自己的博客开发的。django-contact-form是从他的实现中抽象出来的,并已供所有人使用。James 对该项目进行了如下描述:
一个基本的 ContactForm 类(使用 newforms 构建),它处理收集姓名、电子邮件地址和消息以及将其发送给您网站工作人员的最简单案例;ContactForm 中的各种间接方法和有用的钩子,方便通过子类化并仅覆盖需要更改的部分来轻松添加新功能;一个示例子类,它使用 Akismet 对表单进行垃圾邮件检查;一个视图,可以处理显示、验证和从 ContactForm 或子类发送电子邮件的机制,并接受各种参数来控制其行为。
James 还维护着其他有用的 Django 应用程序,包括用户注册应用程序和一组template_utils。 - 来自Silver Stripe Software的 Siddharta Govindaraj 在一篇博文中讲述了他在桌面上(特别是 Windows 和 Linux 系统)部署其 Django 产品 Silver Catalyst 的过程。Siddharta 结合使用了 Django 中的 sqlite 支持、cx_freeze生成可执行文件以及ToofPy作为独立的 Web 服务器。这种方法很可能也可以通过用py2app替换 cx_freeze 步骤来生成 OS X 桌面的可执行文件。OS X 系统的另一个选择是新兴的DjangoKit 项目[2],它提供了自己的 WebKit 视图。
- Marty Alchin 为 Django 创建了一个中间件,它提供了签名 Cookie。Marty描述了该项目的函数:“对传出的 Cookie 进行签名,验证传入的 Cookie,从传入的 Cookie 中删除签名(以便您的视图获得最初设置的 Cookie),无效的 Cookie 会静默地从请求中删除,就像它们从未存在过一样;实用程序可以手动生成签名的 Cookie 值,以便更好地控制;依赖于现有数据(例如 settings.SECRET_KEY),因此对项目的必要添加最少。”
- 除了上述主要新闻外,本周主干的活动较少。此状态报告的更改集汇总包括:
- [5516]——由 Malcolm Tredinnick 提交的补丁,通过缓存其结果来加快反向URL匹配速度,基于 smoo.master@gmail.com 的补丁。一个小小的说明,此更改可能与向后不兼容,但不会造成任何重大问题。
- [5478]——Django-gis 分支GeoDjango收到了一些与GDAL相关的改进。
- [5502]——Stefane Femgier 提交了一个补丁,它正确设置了管理媒体内容的 mime 类型,并已集成到本周的主干中。
- Django 正在进行其Google Summer of Code工作,并且已经发布了一些关于当前正在进行的每个项目的进展公告。
- Andreas Stuhlmüller 正在努力为您的 Django 应用程序实现REST接口,并在过去几周发布了三个关于其进展的更新。更新 2、更新 3和更新 4。Andreas 的项目以及文档、时间表和代码可以在其 Google Code 页面上找到:django-rest-interface。
- Thejaswi Puthraya 正在解决向模型数据添加约束的问题,例如基于范围和值的约束。添加约束。Thejaswi 提供了他希望实现的功能的文档,就在上周,他还提交了他的第一部分代码以及一些屏幕录像,演示如何安装和开始使用他的项目。
- Paul Collier 正在处理对象级缓存的问题,该项目的目标是将我们知道的所有常见缓存习惯用法压缩成智能 QuerySet 方法。Paul 的贡献以及有关此项目的更多文档可以在其 Google 代码页面上找到:django-object-level-caching
- 最后,Jannis Leidel 正在努力简化打包和分发 Django 应用程序的过程。Jannis在上周做出了他的第一个每周更新。
目前就这些,请注意,下一次的更新会短得多。如果您有任何有趣的 Django 相关新闻、项目或公告希望在这里看到,请发送简短说明到 clintecker@gmail.com。
返回顶部