2009-02-04 98 views
107

哪個AJAX庫最適合django,爲什麼?
尋找一個包含教程,書籍和詳細文檔的大型數據庫。
哪一個最容易使用? 哪一個處於早期發展階段,但對未來有很大的希望?

什麼是Django的最佳AJAX庫?

問候,
CHRISS

+0

將問題的標題更改爲更相關的內容。 – mmcdole 2009-02-05 07:41:17

+4

如果這是一個關於javascript庫(prototypejs,jquery,dojo ...)或Django/Python庫(dajax ...)的問題,本來很好澄清 – 2011-11-15 06:08:35

+0

看起來這裏的答案現在已被高度棄用爲框架因爲[Django REST框架](http://www.django-rest-framework.org/)和[Tastypie](http://tastypieapi.org/)似乎更加活躍,現在大多數開發人員傾向於使用,而其他人似乎在目前維護較少的框架(如[Dajax](http://dajaxproject.com/))中遇到問題。 – 2014-06-09 15:03:16

回答

69

我強烈建議jQuery。有幾個關於如何實現它的教程。

http://lethain.com/entry/2007/dec/11/two-faced-django-part-5-jquery-ajax/

http://lethain.com/entry/2007/dec/01/using-jquery-django-autocomplete-fields/

http://vincentxu.net/minimal-ajax-in-django-with-jquery-post

注:微軟還宣佈前一陣子是jQuery的將是ASP.NET MVC的官方客戶端框架,因此它的好知道不管你使用的是什麼服務器端框架。

+0

注意:前兩個鏈接不再有效。 – 2010-12-05 04:58:24

+3

鏈接似乎已重新聯機。 – Soviut 2011-12-19 20:56:47

2

+1 Soviut和丹尼爾好的答案。 Jquery是一個很好的框架。除了Pinax之外,其他一些「大」的Django應用程序還使用它:SatchmoReview Board(它從另一個框架... mootools IIRC轉換而來)。

另外流行的是滾動自己的Javascript沒有使用任何框架,例如Django管理員。

我可能會提出的唯一的其他建議是,如果你是一個非常有經驗的Pythonhead,那麼你可能喜歡mochikit,由於太「pythonic」而受到一些批評。 這似乎是Turbogears的首選框架,但我個人還沒有看到任何使用它的Django項目。

0

短語「最佳AJAX庫」是非常主觀的,取決於個人的喜好,現有懂得,工作等等,等等的要求

雖然我更喜歡的jQuery(幾乎)一切,我知道有些人whio被Dojo或ExtJS發誓。有可能是你想使用jQuery的情況,但需求可能會決定你使用ExtJS。

全部說。使用jQuery。jQuery的岩石;)

0

Django不真正配合客戶端。使用任何你感覺舒服的東西。 Django可以很好地與該領域的所有內容搭配,因爲您只需將它寫入模板。

1

好的,這可能是主觀的,因爲'最好'的定義對每個人都有不同意義。但是,由於您正在與Django合作,這意味着您將使用Python語法來解決問題。一個值得注意的Javascript庫不會暴露太多是Mochikit。關於它的好處是它具有Python程序員熟悉的語法(因爲創建者是Python程序員)。它也很好地寫下了文檔。 TurboGears開箱即用支持Mochikit。

4

我已經成功地在不同的django項目上使用jquery,YUI和Dojo。沒有任何關於使用django更好的方法。我同意jpartogy的看法,mochikit可能比任何其他版本更適合django,只是因爲「pythonic」(扭曲)API。這真的取決於你在ajax框架中尋找什麼。

就我個人而言,我喜歡jQuery可以用給定數量的代碼完成的任務,但編寫jQuery代碼時遇到的最大挑戰是讓它可讀。

YUI比其他框架要冗長得多,因爲它爲使用名稱空間設置了一個約定,但是有很少的代碼編寫的快捷方式,它避免了讓javascript看起來像別的東西。

Dojo試圖讓JavaScript看起來像Java,而且從我的經驗來看,它非常慢。它有一些很好的小部件和django模板語言的JavaScript實現(即使在django項目之外,它也是非常有用的)。

我個人避免原型和mootools,因爲他們可以打破其他JavaScript代碼(反之亦然)。

如果您是JavaScript和ajax的新手,我推薦jQuery,因爲它是最簡單的開始。但我並不指望任何js框架與django集成,主要是因爲真的沒有必要這樣做。

62

我想這可能是你在找什麼:

http://dajaxproject.com/

相當有據可查的。簡單的API。很乾淨,很好。我計劃在我的一些項目中更多地使用它。它是JS庫不可知論的,並且如果這是你的事情,那麼jQuery就可以很好地工作。

UPDATE:

類似dajaxice其他的解決方案,而不是標準dajax。

最後他們的工作基本都是一樣的。

  • 定義/包含一些預定義的URL路由。
  • 註冊將用作數據源的模型/視圖/函數。
  • 享受。

UDATE2:

這個建議是超級老。應該研究其他解決方案。

7

結帳Dajax

Dajax項目

易於使用AJAX庫的Django

快速,簡單,輕便庫 來實現你的Django 項目內AJAX。準備在5分鐘內使用。

Dajax是使用Python和幾乎沒有的JS 行源代碼容易且 超快速度開發中的web應用程序異步 表示邏輯的有力工具。

它支持多達4個最流行的JS框架:原型, jQuery,Dojo和mootols。

1

如果你需要在你的Django項目AJAX的工作很少的設置和使用簡單,我的報價是:

Django的AJAXGithubPypi

快速,爲Django項目提供靈活且易於使用的AJAX庫。包含ajax裝飾器,ajax中間件,快捷鍵等等。