Laravel-adminマルチファイルアップロードプレビューに文字化けし
1245 ワード
Laravel-adminマルチファイルアップロード、プレビューで文字化けしが発生することがあります.ドキュメントの内容を直接表示するため、中国語の文字化けして、ファイルのフォーマットの問題(接尾辞がifc、rfaのファイルなど)のため、文字化けしています.
ソースコードを見ると、Bootstrap FileInputというプラグインが使われています.
他の人から転載されたBootstrap FileInputのapi中国語説明ドキュメント:https://blog.csdn.net/guaiguaiknl/article/details/86659252
Bootstrap FileInputの公式ドキュメント:http://plugins.krajee.com/file-input/plugin-options
上の2つのサイトを参考にすることができます.
今問題の解決方法を言って、半日のソースコードを見て、時間と技術の原因のため、しばらく良い解決方法がありません.こちらの処理方法はプレビューをキャンセルすることですが、
$('#kn_file').fileinput({ 'showPreview':false});idはファイルアップロードのinputボタンのidです
しかし同時に問題が発生し、プレビューがなければ、編集時にアップロードしたファイルは削除できません.これはlaravel-adminのソースコードを修正する必要があります.以前の内容を直接置き換えます.
/vendor/encore/laravel-admin/src/form/Field/で、マルチファイルにアップロードされたソースコードを、次のように変更します.
ソースコードを見ると、Bootstrap FileInputというプラグインが使われています.
他の人から転載されたBootstrap FileInputのapi中国語説明ドキュメント:https://blog.csdn.net/guaiguaiknl/article/details/86659252
Bootstrap FileInputの公式ドキュメント:http://plugins.krajee.com/file-input/plugin-options
上の2つのサイトを参考にすることができます.
今問題の解決方法を言って、半日のソースコードを見て、時間と技術の原因のため、しばらく良い解決方法がありません.こちらの処理方法はプレビューをキャンセルすることですが、
$('#kn_file').fileinput({ 'showPreview':false});idはファイルアップロードのinputボタンのidです
しかし同時に問題が発生し、プレビューがなければ、編集時にアップロードしたファイルは削除できません.これはlaravel-adminのソースコードを修正する必要があります.以前の内容を直接置き換えます.
/vendor/encore/laravel-admin/src/form/Field/で、マルチファイルにアップロードされたソースコードを、次のように変更します.
public function prepare($files)
{
if (request()->has(static::FILE_DELETE_FLAG)) {
return $this->destroy(request(static::FILE_DELETE_FLAG));
}
$targets = array_map([$this, 'prepareForeach'], $files);
// return array_merge($this->original(), $targets);
return array_merge([], $targets);
}