1. 程式人生 > >3. CKeditor+ckfinder ---CKFinder原始碼修改上傳 自定義資料夾名(以時間年月YYYYMM為例)

3. CKeditor+ckfinder ---CKFinder原始碼修改上傳 自定義資料夾名(以時間年月YYYYMM為例)

1 準備

請自行參考  第2文章  此處就不做過多解釋了 ^_^

    2. CKeditor+ckfinder ---CKFinder原始碼修改自定義上傳檔名,連結如下

修改上傳檔名

2  查詢官網資料

連結如下 :https://docs-old.ckeditor.com/CKFinder_2.x/Developers_Guide/Java/CKEditor_Integration 點選開啟連結

有一個引數currentFolder(當前所在檔案),根據官網資料修改我們專案CKeditor中config.js資料如下


var filePath = "";
	var date = new Date(); 
	var year = date.getFullYear();
	var month = (date.getMonth()+1)>9?date.getMonth()+1:"0"+(date.getMonth()+1);
	filePath ="/"+year+month ;
	
	var p='/ckdemo/assets/';
	   config.filebrowserBrowseUrl =p+'ckfinder/ckfinder.html'; 
	    config.filebrowserImageBrowseUrl = p+'ckfinder/ckfinder.html?type=Images';
	    config.filebrowserFlashBrowseUrl = p+'ckfinder/ckfinder.html?type=Flash';
	    config.filebrowserUploadUrl =p+'ckfinder/core/connector/java/connector.java?command=QuickUpload&type=Files';
	    config.filebrowserImageUploadUrl =p+'ckfinder/core/connector/java/connector.java?command=QuickUpload&type=Images¤tFolder='+filePath;
	    config.filebrowserFlashUploadUrl = p+'ckfinder/core/connector/java/connector.java?command=QuickUpload&type=Flash';

儲存,重啟專案。然後點選上傳

    

此時會,提示資料夾不存在。

所以上傳前判斷此路徑是否存在,不存在建立。

此處的上傳按鈕引數值是QuickUpload,具體自行看官網資料吧

3 修改原始碼

要修改的程式碼在CKFinder下

具體怎麼找到FileUploadCommand.java,修改validateUploadItem方法,不做過多解釋。有興趣可以一起探討。

修改com.ckfinder.connector.handlers.command下的FileUploadCommand.java


找validateUploadItem中path引數,定位此處,增加以下程式碼

儲存,maven 打包。此處操作不會的,請參考上篇文章:

連結如下:https://blog.csdn.net/Tane_1018/article/details/80650961 點選開啟連結

4、測試

將打包的檔案 複製到專案中,儲存重啟伺服器。點選上傳

瀏覽伺服器,自行建立了資料夾201806,


jar資源連結如下:

點選開啟ckfinder2.6.0資源連結

https://download.csdn.net/download/tane_1018/10473636