什么是django?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了什么是django?相关的知识,希望对你有一定的参考价值。

我想有pyhon做web开发,看到了django这个东西,说的是web开发框架,但是这个到底是什么东西呢?

Django是一个开放源代码的Web应用框架,由Python写成。

1、Django是一个开放源代码的Web应用框架,由Python写成。采用了MVC的软件设计模式,即模型M,视图V和控制器C。

2、它最初是被开发来用于管理劳伦斯出版集团旗下的一些以新闻内容为主的网站的,即是CMS(内容管理系统)软件。并于2005年7月在BSD许可证下发布。

3、这套框架是以比利时的吉普赛爵士吉他手Django Reinhardt来命名的。

参考技术A 基本就是 可以先通过一些django 命令生成一些文件夹和文件 然后编辑这些py文件 参考技术B 可以自动帮你生成数据库的存储表。当然前提是你要先在你的数据库中建立好对应的数据库。也就是让你省去了写那么多sql语句的过程。 参考技术C 还有可以自动帮你生成数据库的存储表。当然前提是你要先在你的数据库中建立好对应的数据库。也就是让你省去了写那么多sql语句的过程。本回答被提问者采纳 参考技术D 是用python语言写的开源web开发框架(open source web framework),它鼓励快速开发,并遵循MVC设计。
http://baike.baidu.com/view/962167.htm

什么是最好的 Django 搜索应用程序? [关闭]

【中文标题】什么是最好的 Django 搜索应用程序? [关闭]【英文标题】:What's the best Django search app? [closed] 【发布时间】:2010-09-08 11:26:33 【问题描述】:

我正在构建一个需要搜索功能的 Django 项目,在出现 django.contrib.search 之前,我必须选择一个搜索应用程序。那么,哪个是最好的?我所说的“最好”是指...

易于安装/设置 具有 Django 或至少 Python 友好的 API 可以执行相当复杂的搜索

以下是我听说过的一些应用,如果您知道,请推荐其他应用:

djangosearch django-sphinx

我还想避免使用第三方搜索引擎(如 Google SiteSearch),因为我想索引的一些数据仅供网站成员使用,不应公开。

【问题讨论】:

djangopackages.com/grids/g/search 通常情况下,“最佳”之类的内容非常主观,但正如公认的答案所示,django 确实有一个“最佳”搜索应用程序。 除非我完全误解了 django,否则这仍然是一个库请求,因此离题了。 【参考方案1】:

查看Haystack Search - 一个基于新模型的搜索抽象层,目前支持Xapian、Solr 和Whoosh。看起来它得到了很好的支持和记录。

【讨论】:

Haystack 正在积极开发中,作者随时可以通过电子邮件列表联系到。 来自 djangosearch 项目:“该项目不再处于积极开发中。如果您正在寻找一个可与多个搜索引擎一起使用的 django 全文搜索应用程序,请查看 haystack。如果您正在寻找对于特定于 Solr 的东西,您可能想尝试 solango。" Haystack 在相当长的一段时间内一直受到严重支持(如果有的话)。我建议你在这一点上避免它。也许他们会在未来修复它,但它现在处于一个糟糕的地方。 我同意,最新版本的 haystack (2.1) 根本无法与我的 python 2.7 版本的 django 1.4 一起使用。【参考方案2】:

贾斯汀,我先试试djangosearch:Jacob Kaplan-Moss(Django 的首席开发人员)正在研究它。

潜在危害:

主页警告 API 可能不完全稳定

潜在好处:

“长期目标是让它成为django.contrib.search。”

【讨论】:

该页面现在显示“该项目不再处于积极开发中。如果您正在寻找可与多个搜索引擎一起使用的 django 全文搜索应用程序,请查看 Haystack。”【参考方案3】:

我和很多其他人一样在寻找同样的东西。让我们希望 django.contrib.search 将尽快添加。

与此同时,这是我发现的:

http://code.google.com/p/djangosearch/ http://code.google.com/p/django-sphinx/ http://code.google.com/p/djapian/ http://code.google.com/p/django-search-lucene/ http://www.sai.msu.su/~megera/postgres/gist/tsearch/V2/

对我来说,大多数看起来都相当复杂,坦率地说,实施起来有点令人生畏。 我很想知道你对这些的看法。

【讨论】:

【参考方案4】:

djangosearch 的谷歌代码页表明它不再处于积极开发中,并建议haystack 或solango。

【讨论】:

Solango 表示它不再处于开发阶段,并建议使用 Haystack。【参考方案5】:

我推荐 Sphinx 用于全文搜索和聚合,django-sphinx 足以用于生产用途。我们发现 Sphinx 是索引和搜索文档的资源最少且最快的方法,并且 django-sphinx 是 sphinx 客户端之上的一个很好的包装器。

聚合分组特别好,例如,如果您想显示有多少具有特定标签或特定作者(或两者)的文档与搜索匹配。内存中的属性更新也很方便,尤其是对于立即删除已删除的文章。

【讨论】:

【参考方案6】:

谢谢加思。之前看到 djangosearch 想成为 Django 的官方搜索,但是因为找不到任何文档,所以犹豫要不要使用它!幸运的是,有一个我以前没见过的README in subversion,它让 API 看起来很酷:

# set up the model
class Event(models.Model):
    title = models.CharField(max_length=255)
    date = models.DateField()
    is_outdoors = models.BooleanField()

    index = djangosearch.ModelIndex(text=['title'], 
                                    additional=['date', 'is_outdoors'])

# run a search
results = Event.index.search("django conference")

【讨论】:

【参考方案7】:

我只需要一个非常快速的解决方案,对于内部应用来说不会大惊小怪。

我找到了文章Adding search to Django in a snap,这对我来说非常棒!

显然它缺乏真正项目(如 Haystack)的速度、可扩展性和功能,但这个更容易设置,而且我真的不需要关键字 AND 搜索。

【讨论】:

【参考方案8】:

您可能需要考虑让雅虎通过构建您自己的搜索服务 (BOSS) 来完成所有艰苦的工作。这是一篇很棒的博客文章,可引导您完成整个过程: http://www.peterkrantz.com/2008/yahoo-search-in-django/

【讨论】:

我有一个 Django 包,可以让它变得更简单:bitbucket.org/jaap3/django-bosssearch【参考方案9】:

看来这里的每个人都错过了django-xappy

在对所有现有的 Django 搜索插件进行快速评估后,我发现这是最灵活且最易于使用的插件。它在一些地方有点粗糙,但它仍然是在 Django 项目中使用Xapian 搜索引擎的最佳方式。

【讨论】:

【参考方案10】:

您可能想查看Django Solr search(又名“Solango”),它附带一些很好的文档来帮助您入门...

【讨论】:

【参考方案11】:

如果您有大量数据要编入索引,或者您希望获得高流量,我建议您使用一些外部搜索引擎,例如 Solr。这样,您将保持无共享方法,并能够独立扩展您的网站组件。

【讨论】:

【参考方案12】:

我想我得向 Djapian 大喊一声。

它坚如磐石......只需拉下一个源分布并查看内部。一流的代码,不是很多cmets tho..

它仍然是一个年轻的软件项目,但我认为 django 社区应该大力支持这个项目。

【讨论】:

【参考方案13】:

谢谢乔,

我们决定使用 Tsearch2 和自定义 postgres 适配器。 Tsearch2 不需要额外的进程来运行,这很方便,因为我们在一个内存有限的 WebFaction 主机上......它还没有完全完成,但似乎是一个很好的解决方案......

【讨论】:

【参考方案14】:

我发现 Djoosh 依赖于纯 Python 外部搜索引擎 Whoosh 与我的“Python”大脑一起工作。

【讨论】:

【参考方案15】:

如果你愿意使用第三方搜索引擎,我可以推荐Yahoo BOSS 和django-bosssearch。

Yahoo BOSS 是一项付费服务​​,但它可以让您在服务器上设置和维护其他搜索软件。

【讨论】:

以上是关于什么是django?的主要内容,如果未能解决你的问题,请参考以下文章

什么是 django 通道 InMemoryChannelLayer 限制

django是啥

什么是最好的 Django 搜索应用程序? [关闭]

Django 啥是反向关系?

什么是 Django 中的“从未来加载 url”

什么是django中间件?(七个中间件-自定义中间件)