Summernote wysiwyg编辑器将图像文件编码为Base64。嗯,这看起来很方便,但我希望DB能够长期使用。这将导致一些问题 - 搜索速度慢,实现图像库等...
我想知道它是否可以选择关闭此编码选项并使用'插入url'方法intead。我一直在寻找它,但还没有取得很大的成功。
例如,不要存储像......这样的图像。
<img style="width: 640px;" src="data:image/jpeg;base64,/9j/4Qv6RXhpZgAATU0AKgAAAAgABwESAAMAAAABAAEAAAEaAAUAAAABAAAAYgEbAAUAAAABAAAAagEoAAMAAAABAAIAAAExAAIAAAAeAAAAcgEyAAIAAAAUAAAAkIdp...............>
它应该是......
<img src="/images/blah/blah.jpg.">
任何文件?或任何提及的例子?
谢谢!
答案 0 :(得分:3)
您需要为onImageUpload()编写自定义函数。
我一直在寻找解决方案。找到了这个:Summernote image upload
答案 1 :(得分:1)
我的一些应用程序也遇到了这个问题。我在这里创建了详细的教程https://a1websitepro.com/store-image-uploads-on-server-with-summernote-not-base-64/
您必须让summernote知道您将使用函数处理图像文件。
$(document).ready(function() {
$("#summernote").summernote({
placeholder: 'enter directions here...',
height: 300,
callbacks: {
onImageUpload : function(files, editor, welEditable) {
for(var i = files.length - 1; i >= 0; i--) {
sendFile(files[i], this);
}
}
}
});
});
然后为回调创建另一个这样的函数。
function sendFile(file, el) {
var form_data = new FormData();
form_data.append('file', file);
$.ajax({
data: form_data,
type: "POST",
url: 'editor-upload.php',
cache: false,
contentType: false,
processData: false,
success: function(url) {
$(el).summernote('editor.insertImage', url);
}
});
}
然后你需要创建一个php文件。处理请求。请注意,此脚本的php文件名为editor-upload.php