PHP code example of guiszytko / laravel-file-manager
1. Go to this page and download the library: Download guiszytko/laravel-file-manager library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
guiszytko / laravel-file-manager example snippets
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
use Guiszytko\LaravelFileManager\Traits\FileUploadTrait;
class Post extends Model
{
use FileUploadTrait;
protected $fillable = ['title', 'content'];
// O método files() será automaticamente adicionado pela trait
}
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Models\Post;
class PostController extends Controller
{
public function store(Request $request)
{
// Validação dos dados
$request->validate([
'title' => ' if ($request->hasFile('file')) {
$post->uploadFile([
'file' => $request->file('file'),
'generate_thumbnail' => true, // Gera uma miniatura automaticamente
'folder_path' => 'posts/files', // Define uma pasta específica
'use_date_folders' => true, // Organiza por data
]);
}
return redirect()->route('posts.index')->with('success', 'Post criado com sucesso!');
}
}
public function destroyFile(Request $request, Post $post, $fileId)
{
try {
// Deletar o arquivo usando o método deleteFile da trait
$post->deleteFile($fileId);
return back()->with('success', 'Arquivo deletado com sucesso!');
} catch (\Exception $e) {
return back()->withErrors('Erro ao deletar o arquivo: ' . $e->getMessage());
}
}