Несколько атрибутов имени в Dropzone - PullRequest
0 голосов
/ 27 мая 2020

Добрый день,

Я пытаюсь реализовать Dropzone в проекте Laravel. Может ли кто-нибудь посоветовать, как я могу добавить несколько атрибутов имени в сценарий Dropzone, чтобы загружать изображения в разные места и сохранять имена изображений в базе данных? Пожалуйста, найдите код ниже. Помощь будет оценена.

Просмотр файла:

<script type="text/javascript">
       Dropzone.options.dropzone =
       {
           maxFilesize: 10,
           renameFile: function (file) {
               var dt = new Date();
               var time = dt.getTime();
               return time + file.name;
           },
           acceptedFiles: ".jpeg,.jpg,.png,.gif",
           addRemoveLinks: true,
           timeout: 60000,
           success: function (file, response) {
               console.log(response);
           },
           error: function (file, response) {
               return false;
           }
       };
   </script>

Контроллер:

 public function store(Request $request)
   {

// Upload image 1
       $image1 = $request->file('file1');
       $avatarName = $image1->getClientOriginalName();

       $image1->move(storage_path('app/public/images/image1'),$avatarName);
       $imageUpload = new Image();
       $imageUpload->filename = $avatarName;
       $imageUpload->save();
       return response()->json(['success'=>$avatarName]);

// Upload image 2
       $image2 = $request->file('file2');
       $avatarName = $image2->getClientOriginalName();

       $image2->move(storage_path('app/public/images/image2'),$avatarName);
       $imageUpload = new Image();
       $imageUpload->filename = $avatarName;
       $imageUpload->save();
       return response()->json(['success'=>$avatarName]);

//Save image names in the database   
       $user = Auth::user();
       $property = new Property;

       $property->user_id = auth()->user()->id;
       $property->image1 = $image1;
       $property->image2 = $image2;

       $user->save();
       $property->save();
       return redirect('/users/listings')->with('success', 'Listing has been created.');   
   }
}

1 Ответ

0 голосов
/ 27 мая 2020

Каждая зона перетаскивания имеет только 1 имя, полученное из тега входного файла, поэтому для этого вам нужно 2 зоны перетаскивания.

...