php - 在dropzone中上传后如何更改重命名?
问题描述
我希望我的文件名变得唯一,因此我可以将文件名传递给控制器并按名称删除文件。但是我尝试了很多方法它不起作用。知道如何更改文件名吗?
我在服务器上更改它并返回新文件名。现在我想将上传的文件名重命名为我返回的名称。
看这张图片,
画廊控制器
public function create(Product $product)
{
$galleries = Gallery::where('product_id', $product->id)->latest();
return view('Admin.galleries.create', compact('product', 'galleries'));
}
创建.blade.php
@extends('Admin.master')
@push('style')
<link rel="stylesheet" href="{{ asset('themes/css/dropzone.min.css') }}">
@endpush
@section('content')
<div class="col-md-10 p-5 pt-2">
<form method="post" action="{{ route('products.galleries.store', $product->id) }}" enctype="multipart/form-data" class="dropzone" id="dropzone">
@csrf
</form>
<hr>
</div>
@endsection
@push('script')
<script src="{{ asset('themes/js/dropzone.min.js') }}"></script>
<script>
Dropzone.options.dropzone = {
maxFilesize: 12000000,
renameFile: function (file) {
var date = new Date();
var time = date.getTime();
return time + file.name;
},
acceptedFiles: ".jpeg, .jpg, .png, .gif",
addRemoveLinks: true,
timeout: 5000000,
removedfile: function (file) {
var name = file.upload.filename;
@isset($gallery)
$.ajax({
headers: {
'X-CSRF-TOKEN': $('meta[name="csrf-token"]').attr('content'),
},
type: 'POST',
url: '{{ route('products.galleries.destroy', [$product->id, $gallery->id]) }}',
date: {filename, name},
success: function (data) {
console.log('File has been successfully removed!!');
},
error: function (e){
console.log(e);
},
});
@endisset
var fileRef;
return (fileRef = file.previewElement) != null ? fileRef.parentNode.removeChild(file.previewElement) : void 0;
},
success: function (file, response) {
console.log(response);
},
error: function (file, response) {
return false;
},
};
</script>
@endpush
网页.php
Route::resource('products', 'ProductController');
Route::resource('products.galleries', 'GalleryController');
解决方案
推荐阅读
- node.js - 如何确保我的变量在被不同路由使用时被初始化?
- swift - 无法将“Foundation.Data”类型的值分配给“Appname.Data”类型
- angular - ngStyle 指令未应用于链接标签
- splunk - 如何在 splunk 中将具有不同值元素的列相乘
- .net - 使用 HttpClient 的 SharePoint 2010 身份验证
- c++ - 无与伦比的井字游戏
- qt - 无法连接 doublespinbox valuechanged 信号
- vb.net - 异常不会做它应该做的事情
- angular - 如何在 Angular App 中使用来自 cdns 的 moment.js
- embedded-linux - Iotivity 客户端在一段时间后未发现资源