2009-08-11 82 views
10

我知道如何在使用widget =的常規Django窗體中使用WMD和其他類似的javascript編輯器。但是,如何在Django管理員的文本字段中使用WMD?最重要的是,我如何將它用於管理員的contrib.flatpages上的內容字段?在Django Admin中的WMD?

另外,我想我可能會喜歡使用WMD的StackOverflow分支,所以如果需要的話,我希望爲此提供任何特殊說明。

我知道如何在模板中使用降價過濾器,以便部分正常。我只需要讓編輯出現並在管理界面中工作即可。

回答

5

我放棄了試圖使用WMD。相反,我用Markitup!截至本文發佈時,WMD的當前版本尚未達成一致。它的StackOverflow分支更好,但缺少我想要的許多功能。

取而代之,我決定使用Markitup!它有一個Django可重用的應用程序。它也很好地與現有的django.contrib.markup模板過濾器集成。

django-markitup

我還發現一個網站,展示瞭如何使用它的flatpages,而無需編輯管理模板。

extending admin forms in django

+1

這太糟糕了,因爲我們創建了django-wmd-editor:http://github.com/scrum8/django-wmd-editor – 2009-09-22 05:21:32

+0

當時我不需要它。 – Apreche 2009-09-22 15:58:52

+2

死鏈接jpartogi – 2011-08-11 13:15:50

0

這不是您的問題的直接答案,但它可能會有所幫助。

TinyMCE WYSIWYG編輯器添加到django似乎很常見。如果您搜索有關如何將TinyMCE添加到Django管理員的說明,則可以修改WMD的方法。

在書Practical Django Projects, Second Edition中,作者將TinyMCE嵌入到flatpages管理員中。您可以從Bitbucket repository下載代碼,並查看它是如何完成的(查看cms/templates/admin /)。或者,您可以在Django網站上嘗試this guide


對於該問題+1。我也想在減價中寫flatpages。但是我覺得用降價的最好的方法是

  1. 有兩個字段,說contentcontent_html,和原來的降價存儲在content
  2. 保存對象時,將markdown轉換爲html並將其存儲在content_html中。

這意味着您在每次查看頁面時都避免轉換爲模板中的html。然而,我不知道通過'添加'額外字段來擴展contrib.flatpages的優雅方式。

+0

哦哇,這是一個非常聰明的想法,有兩個領域。顯然,HTML字段將是不可編輯的。不過,我認爲您也可以緩存轉換後的HTML,並在性能方面實現幾乎相同的優勢。 – Apreche 2009-08-11 10:25:35

2

要插入大規模殺傷性武器,或任何其他很酷的JS,到admin頁面,請按照覆蓋Django文檔的管理模板的說明,正確的here - 最壞的情況下,你會複製和編輯現有的Django模板添加所需的JS功能,並使用這些說明來確保使用修改後的模板而不是Django的默認模板,但幾乎總是可以做得比這更好,正如您在這些說明中所看到的。