使用富文字編輯器上傳的檔案是要放到伺服器上的,所以這是乙個request。既然是乙個request,就需要urls.py進行**請求views.py進行處理。views.py處理完了返回乙個檔案所在的路徑給富文字編輯器,富文字編輯器通過html來渲染檔案,如果檔案是,就顯示。
#upload要麼為false 要麼為物件
upload:
需要返回的json格式:
@csrf_exempt #取消csrf驗證,否則會有403錯誤
def file_upload(request,dir_name):
files=request.files.get('upload_file') #得到檔案物件
today=datetime.datetime.today()
file_dir=settings.media_root+dir_name+'/%d/%d/%d/'%(today.year,today.month,today.day)
if not os.path.exists(file_dir):
os.makedirs(file_dir)
file_path=file_dir+files.name
open(file_path,'wb+').write(files.read()) #上傳檔案
#得到json格式的返回值
upload_info=
upload_info=json.dumps(upload_info)
為什麼需要再次配置urls.py
呢?因為文字編輯器雖然返回了已經上傳的檔案的位址,但是要顯示在頁面上,實際上又是一次request。凡是request
,都需要urls.py
**給views.py
進行處理。
#urls.py
from django.conf import settings
#django.views.static.serve是內建的,但是只能在開發中使用,生產環境中需要交給伺服器來處理,因為上傳的檔案已經屬於靜態檔案了。
urlpatterns+=[
url(r'^uploads/(?p.*)$',diango.views.static.serve,)
]
simditor採用的方法是利用ajax請求多次,有幾個檔案就請求幾次。
有沒有其他的方法呢?
django 富文字編輯器
1.安裝 pip install django tinymce 安裝完成後可以使用在admin管理中,也可以自定義表中 2.配置 tinymce 並在setting.py中新增編輯器配置 tinymce default config 在專案中urls.py中配置編輯器url urlpatterns ...
富文字編輯器
關於使用富文字編輯器的一些小坑 官網 1.專案 片 editor fail function xhr,editor,result custominsert function insertimg,result,editor this.editor.create this.editor.txt.html...
富文字編輯器
富文字編輯器,rich text editor,簡稱 rte,它提供類似於 microsoft word 的編輯功能。常用的富文字編輯器 kindeditor ueditor ckeditor 在頁面中新增js 用於初始化kindeditorallowfilemanager 是否允許瀏覽伺服器已上傳...