2

我使用django-tinymce和django-filebrowser的no grappelli分支一起運行django 1.2。管理員字段無法在django中使用tinymce和filebrowser保存

我使用tinymce HTMLField模型定義模型字段,我想所見即所得。

我已經添加了正確的javascript到我的AdminModel,並且filebrowser工作得很好,將圖像添加到textarea沒有問題,但是,當我保存時,textarea不更新(它看起來像tinnymce不當它應該觸摸它)。當我關閉filebrowser插件時,一切正常,因此必須與它和TinyMCE onSubmit功能發生衝突。

我一直在爲它亂搞,只是無法得到任何地方 - 所有這些作品對我來說都是新鮮的,所以即使是一些想法弄亂什麼也是有幫助的。

在此先感謝。

編輯:添加獎金信息 - '模式'的配置默認模式是'textareas'。當我刪除它時,一切都可以正確保存。可悲的是,這也消除了圖像按鈕,我做這一切有...

更新

下面是我使用(包括在Django的filebrowser的一個TinyMCE的配置 - 這被):

tinyMCE.init({ 
    mode: "textareas", 
    theme: "advanced", 
    language: "en", 
    skin: "o2k7", 
    browsers: "gecko", 
    dialog_type: "modal", 
    object_resizing: true, 
    cleanup_on_startup: true, 
    forced_root_block: "p", 
    remove_trailing_nbsp: true, 
    theme_advanced_toolbar_location: "top", 
    theme_advanced_toolbar_align: "left", 
    theme_advanced_statusbar_location: "none", 
    theme_advanced_buttons1: "formatselect,bold,italic,underline,bullist,numlist,undo,redo,link,unlink,image,code,fullscreen,pasteword,media,charmap", 
    theme_advanced_buttons2: "", 
    theme_advanced_buttons3: "", 
    theme_advanced_path: false, 
    theme_advanced_blockformats: "p,h2,h3,h4,h5,h6", 
    width: '700', 
    height: '200', 
    plugins: "advimage,advlink,fullscreen,visualchars,paste,media,template,searchreplace", 
    advimage_styles: "Linksbündig neben Text=img_left;Rechtsbündig neben Text=img_right;Eigener Block=img_block", 
    advlink_styles: "internal (sehmaschine.net)=internal;external (link to an external site)=external", 
    advimage_update_dimensions_onchange: true, 
    file_browser_callback: "CustomFileBrowser", 
    relative_urls: false, 
    valid_elements : "" + 
    "-p," + 
    "a[href|target=_blank|class]," + 
    "-strong/-b," + 
    "-em/-i," + 
    "-u," + 
    "-ol," + 
    "-ul," + 
    "-li," + 
    "br," + 
    "img[class|src|alt=|width|height]," + 
    "-h2,-h3,-h4," + 
    "-pre," + 
    "-code," + 
    "-div", 
    extended_valid_elements: "" + 
    "a[name|class|href|target|title|onclick]," + 
    img[class|src|border=0|alt|title|hspace|vspace|width|height|align|onmouseover|onmouseout|name]," + 
    "br[clearfix]," + 
    "-p[class<clearfix?summary?code]," + 
    "h2[class<clearfix],h3[class<clearfix],h4[class<clearfix]," + 
    "ul[class<clearfix],ol[class<clearfix]," + 
    "div[class]," 
}); 

這是兩個問題,我有一個 - 要張貼下面的答案爲好。

+0

你能發佈tinymce的確切初始化嗎? – Thariama 2010-07-13 06:58:45

回答

3

這個問題實際上是雙重的。第一個問題是django-filebrowser-no-grappelli附帶的默認TinyMCE配置(上面的問題)。我不確定它有什麼問題,但是它阻止了當提交按鈕被按下時實際的表單域被更新。

當我使用TinyMCE的自定義配置時,表單字段保存工作正常,但文件瀏覽被破壞。這是因爲如果django-tinymce在已安裝的應用程序列表中看到'filebrowser',它會覆蓋file_browser_callback並將其設置爲'djangoFileBrowser',所以即使我在我自己的配置中將其正確設置爲'CustomFileBrowser'。解決辦法是明確告訴它不要設置該值。我在我的settings.py中添加了以下內容:

TINYMCE_DEFAULT_CONFIG = { 
    'theme': 'advanced', 
    'theme_advanced_toolbar_location': "top", 
    'theme_advanced_toolbar_align': "left", 
    'skin': "o2k7", 
    "file_browser_callback" : "CustomFileBrowser", 
} 
TINYMCE_FILEBROWSER = False 

而且一切似乎都正常。這個問題似乎對我的版本組合來說是相當獨特的。

相關問題