Django源于一个非常现实的需求:报纸网络运营公司World Online负责在新闻截止日期前构建密集的网络应用程序。在快节奏的新闻编辑部,世界在线通常只有几个小时的时间来完成一个复杂的网络应用程序从概念到公开发布。
与此同时,World Online Web开发人员在遵循Web开发的最佳实践方面一直是完美主义者。
2003年秋天,World Online开发人员(禤浩焯·霍洛瓦蒂和西蒙·威里森)抛弃了PHP语言,开始使用Python开发其网站。随着他们构建像Lawrence.com这样密集、交互丰富的网站,他们开始提取一个通用的Web开发框架,使他们能够越来越快地构建Web应用程序。他们不断地调整这个框架,在两年的时间里增加了改进。
2005年夏天,世界在线决定开放源代码的结果软件,django。没有一个完整的开源项目,Django是不可能实现的。-- Apache , Python 和 PostgreSQL 举几个例子——我们很高兴能够回馈开源社区。
Django是以 Django Reinhardt 他是一位爵士马诺奇吉他手,从20世纪30年代到20世纪50年代初,一直被认为是有史以来最好的吉他手之一。
听他的音乐。你会喜欢的。
Django发音 JANG -哦。和方哦押韵。“D”是无声的。
我们还录制了 audio clip of the pronunciation .
是的,它很稳定。Disqus、Instagram、Pinterest和Mozilla等公司多年来一直在使用Django。建在Django上的网站经受住了每秒超过5万次的流量高峰。
对。与开发时间相比,硬件是便宜的,因此Django的设计目的是尽可能多地利用硬件。
Django使用“无共享”架构,这意味着您可以在任何级别添加硬件--数据库服务器、缓存服务器或Web/应用程序服务器。
框架将数据库层和应用程序层等组件清晰地分开。它配备了一个简单而强大的 cache framework .
Django最初是由世界在线开发的,世界在线是美国堪萨斯州劳伦斯一家报纸的网络部。Django现在由一位国际 team of volunteers 。
Django分布于 the 3-clause BSD license . 这是一个开放源码许可证,授予修改和重新发布django的广泛权限。
Django包含来自Python标准库的代码。python是在许可的开放源代码许可下发布的。 A copy of the Python license 包括在Django中,以符合python的条款。
BuiltWithDjango.com Django支持的网站不断增加。
嗯,标准名称是有争议的。
在我们对MVC的解释中,“视图”描述了向用户显示的数据。不一定 how 数据 看 ,但是 哪一个 提供数据。视图描述了 你看到哪些数据 不是 你怎么看的。 这是一个微妙的区别。
因此,在我们的例子中,“view”是特定URL的python回调函数,因为该回调函数描述了呈现的数据。
此外,将内容与表示分离是明智的——模板就是在这里出现的。在Django中,“视图”描述了显示的数据,但视图通常委托给模板,该模板描述了 how 给出了数据。
那么“控制器”放在哪里呢?在Django的例子中,可能是框架本身:根据Django的URL配置,向适当的视图发送请求的机器。
如果你对缩写词很感兴趣,你可能会说django是一个“mtv”框架——即“模型”、“模板”和“视图”。这种分解更为合理。
归根结底,关键在于把事情做好。而且,无论事物如何命名,Django都会以一种对我们来说最合乎逻辑的方式完成事情。
我们很清楚还有其他很棒的Web框架,我们并不反对在适当的时候借用想法。然而,Django的开发正是因为我们对现状不满意,所以请注意,“因为<框架X>是这样”将不会成为向Django添加给定功能的充分理由。
在最初编写Django时,禤浩焯和西蒙花了相当多的时间探索各种可用的PythonWeb框架。
在我们看来,他们中没有一个完全符合要求。
我们很挑剔。你甚至可以叫我们完美主义者。(有最后期限。)
随着时间的推移,我们偶然发现了一些开源库,它们完成了我们已经实现的事情。看到其他人以类似的方式解决类似的问题让人安心,但集成外部代码为时已晚:我们已经在几个生产环境中编写、测试和实现了自己的框架位,并且我们自己的代码满足了我们的需要。
然而,在大多数情况下,我们发现现有的框架/工具不可避免地会有一些基本的、致命的缺陷,这让我们感到非常不安。没有完全符合我们原理的工具。
就像我们说的:我们很挑剔。
我们已经记录了我们的原理 design philosophies page .
不,Django本身并不是CMS,也不是任何类型的“交钥匙产品”。它是一个网络框架;它是一个让你建立网站的编程工具。
例如,把Django比作 Drupal, 因为django是你习惯的 创造 像Drupal这样的东西。
是的,Django的自动管理网站非常棒,而且省时--但管理网站是Django框架的一个模块。此外,尽管Django为构建“CMS-y”应用程序提供了特殊的便利,但这并不意味着它不仅适合构建“非CMS-y”应用程序(无论这意味着什么!)。
Django文档可在 docs
每个Django tarball版本的目录。这些文档是REST(ReStrutiredText)格式,每个文本文件对应于Django官方网站上的一个网页。
因为文件是 stored in revision control 您可以像浏览代码更改一样浏览文档更改。
从技术上讲,django网站上的文档是从这些剩余文档的最新开发版本生成的,因此django网站上的文档可能比最新django版本附带的文档提供更多信息。
很难给出一个正式的引文格式,原因有两个:引文格式在出版物中的差异很大,而软件的引文标准仍然是一个有争议的问题。
例如, APA style ,将口述类似以下内容:
Django (Version 1.5) [Computer Software]. (2013). Retrieved from https://www.djangoproject.com/.
然而,唯一真正的指南是你的出版商会接受的,所以你可以得到这些指南的副本,并尽可能地填补空白。
如果引用样式指南需要发布者名称,请使用“Django软件基金会”。
如果您需要发布位置,请使用“堪萨斯州劳伦斯”。
如果您需要网址,请使用https://www.djangoproject.com/.
如果你需要一个名字,只需使用"Django",没有任何标语。
如果需要发布日期,请使用所引用版本的发布年份(例如,2013年的v1.5版)
7月 22, 2024