diff --git a/pages/app-deploy/laravel/object-storage.js b/pages/app-deploy/laravel/object-storage.js
index ee67f073..5c4a6026 100644
--- a/pages/app-deploy/laravel/object-storage.js
+++ b/pages/app-deploy/laravel/object-storage.js
@@ -49,23 +49,6 @@ export default () => (
نحوه استفاده
-
- بازیابی فایلها توسط Amazon S3 Driver
-
-
- دانلود فایل توسط Amazon S3 Driver
-
-
-
- دریافت لیست فایلهای آپلود شده توسط Amazon S3 Driver
-
-
-
- حذف فایل توسط Amazon S3 Driver
-
-
- آپلود فایل توسط Amazon S3 Driver
-
@@ -163,101 +146,216 @@ DEFAULT_REGION=us-east-1`}
نحوه استفاده
-
- توجه داشته باشید همه مسیرهای فایل، باید نسبت به روت باکت مشخص شوند.
-
-
- میتوان گفت که تغییر خاصی در نحوهی استفادهی شما بهوجود نخواهد آمد. برای
- مثال شما میتوانید با استفاده از قطعه کد زیر، محتوای{" "}
- Contents را در فایلی با نام{" "}
- example.txt قرار داده و آن را در فضای
- ذخیرهسازی ابری خود ذخیره کنید:
+ در پروژه خود میتوانید یک کنترلر به نام{" "}
+ S3Controller.php در مسیر
+ app/Http/Controllers ایجاد کنید. بعد از
+ ایجاد فایل مذکور، کافیست تا محتوای آن را به شکل زیر بنویسید:
-
- {`use Illuminate\\Support\\Facades\\Storage;
-
-Storage::disk('liara')->put('example.txt', 'Contents');`}
-
-
- بازیابی فایلها توسط Amazon S3 Driver
- نمونه کد برای بازیابی فایلها:
-
-
-
- {`use Illuminate\\Support\\Facades\\Storage;
+
+ {`validate([
+ 'upload_file' => 'required|max:2048', // Adjust the file size validation as needed
+ ]);
+
+ $file = $request->file('upload_file');
+ $fileName = $file->getClientOriginalName();
+
+ Storage::disk('liara')->put($fileName, file_get_contents($file));
+
+ return redirect()->route('user.interface')->with('success', 'File uploaded successfully');
+ }
+
+ public function showObjects()
+ {
+ $objects = Storage::disk('liara')->allFiles('');
+
+ $files = [];
+ foreach ($objects as $object) {
+ $files[] = [
+ 'name' => $object,
+ 'download_link' => Storage::disk('liara')->temporaryUrl($object, now()->addMinutes(5)),
+ ];
+ }
+
+ return view('userinterface', ['files' => $files]);
+ }
+
+
+ public function downloadFile(Request $request)
+ {
+ $fileName = $request->input('download_file');
+ return Storage::disk('liara')->download($fileName);
+ }
+
+ public function deleteFile(Request $request)
+ {
+ $fileName = $request->input('delete_file');
+ Storage::disk('liara')->delete($fileName);
+
+ return redirect()->route('user.interface')->with('success', 'File deleted successfully');
+ }
+}
+`}
- اگر فایلی دارید که محتوای آن JSON باشد ، میتوانید با متد{" "}
- json آنها را بازیابی کنید:
+ اکنون، میبایست یک فایل به نام{" "}
+ userinterface.blade.php در مسیر{" "}
+ resources/views/
+ ایجاد کنید و قطعه کد زیر را درون آن قرار دهید:
-
- {`use Illuminate\\Support\\Facades\\Storage;
-$orders = Storage::json('orders.json');`}
+
+ {`
+
+
+
+
+
+
+ S3 Controller User Interface
+
+
+
+
+
+ S3 Controller User Interface
+
+ @if(session('success'))
+ {{ session('success') }}
+ @endif
+
+
+
+
+
+ @if(isset($files) && count($files) > 0)
+
+ @endif
+
+
+`}
-
- دانلود فایل توسط Amazon S3 Driver
- نمونه کد برای دانلود فایل:
-
- {`use Illuminate\\Support\\Facades\\Storage;
-
-return Storage::download('file.jpg');`}
-
-
-
- دریافت لیست فایلهای آپلود شده توسط Amazon S3 Driver
-
- نمونه کد برای دریافت لیست فایلهای آپلود شده:
-
- {`use Illuminate\\Support\\Facades\\Storage;
-
-$files = Storage::files($directory);
-
-$files = Storage::allFiles($directory);`}
-
-
- حذف فایل توسط Amazon S3 Driver
- نمونه کد برای حذف فایلهای آپلود شده:
-
- {`use Illuminate\\Support\\Facades\\Storage;
-
-Storage::disk('liara')->delete('path/file.jpg');
-
-// Or you can use:
-Storage::delete('file.jpg');
-
-Storage::delete(['file.jpg', 'file2.jpg']);`}
-
-
- آپلود فایل توسط Amazon S3 Driver
- نمونه کد برای آپلود فایل:
-
- {`file('avatar'));
-
- return $path;
- }
-}`}
+
+ پس از این کار، کافیست تا قطعه کد زیر را در فایل{" "}
+ web.php در مسیر{" "}
+ routes وارد کنید:
+
+
+ {`use App\Http\Controllers\S3Controller;
+
+Route::get('/userinterface', function () {
+ return view('userinterface');
+});
+
+Route::get('/userinterface', [S3Controller::class, 'showUserInterface'])->name('user.interface');
+Route::post('/upload-file', [S3Controller::class, 'uploadFile'])->name('upload.file');
+Route::post('/show-objects', [S3Controller::class, 'showObjects'])->name('show.objects');
+Route::post('/retrieve-file', [S3Controller::class, 'retrieveFile'])->name('retrieve.file');
+Route::post('/delete-file', [S3Controller::class, 'deleteFile'])->name('delete.file');
+Route::post('/download-file', [S3Controller::class, 'downloadFile'])->name('download.file');
+`}
+
+ تمامی کارها انجام شده است و اگر متغیرهای محیطی را به درستی تنظیم
+ کردهباشید؛ میتوانید پس از اجرای برنامه، در مسیر{" "}
+ /userinterface از فضای ذخیرهسازی ابری لیارا
+ استفاده کنید؛ با استفاده از قطعه کدهای فوق، شما میتوانید فایلهای
+ مدنظرتان را در فضای ذخیرهسازی ابری لیارا آپلود کنید، دانلود کنید، حذف
+ کنید و یا یک لیست از آنها داشته باشید. بدیهی است که برای تغییر قابلیتها
+ و موارد استفاده، میتوانید کدهای بالا را شخصیسازی کنید.
+