Browse Source

上传文件添加 override 方法

laradocs 3 years ago
parent
commit
fc11cd054b
3 changed files with 8 additions and 4 deletions
  1. 0 3
      config/admin.php
  2. 7 0
      src/Form/Field/File.php
  3. 1 1
      src/Form/Field/UploadField.php

+ 0 - 3
config/admin.php

@@ -270,9 +270,6 @@ return [
             'file'  => 'files',
         ],
 
-        // Overwriting an existing file.
-        'override' => env('ADMIN_UPLOAD_OVERRIDE', false),
-
     ],
 
     /*

+ 7 - 0
src/Form/Field/File.php

@@ -227,4 +227,11 @@ class File extends Field implements UploadFieldInterface
             Helper::deleteContains($fieldRules, ['image', 'file', 'dimensions', 'size', 'max', 'min']);
         }
     }
+
+    public function override ( bool $override = true )
+    {
+        $this->options['override'] = $override;
+
+        return $this;
+    }
 }

+ 1 - 1
src/Form/Field/UploadField.php

@@ -98,7 +98,7 @@ trait UploadField
      */
     public function renameIfExists(UploadedFile $file)
     {
-        if ($this->getStorage()->exists("{$this->getDirectory()}/$this->name") && ! config('admin.upload.override')) {
+        if ($this->getStorage()->exists("{$this->getDirectory()}/$this->name") && ! ($this->options['override'] ?? false)) {
             $this->name = $this->generateUniqueName($file);
         }
     }