name : CompagnieEdit.php
<?php

namespace App\Livewire\Compagnie;
use Illuminate\Support\Facades\Storage;
use Livewire\Component;

use Livewire\Attributes\Title;
use Illuminate\Validation\Rule;
use App\Models\Compagnie;
use Livewire\WithFileUploads;
use Illuminate\Support\Facades\Auth;

class CompagnieEdit extends Component
{

    use WithFileUploads;
    
    #[Rule('image|mimes:jpg,jpeg,png')]
    public $photo;
    public $Nom_compagnie;
    public $addresse;
    public $contact;
    public $IDpays_compagnie;

    public $success;
    public $prod;

    public function mount($id)
    {
        if (!Auth::check()) {
            return redirect()->route('post.login');
        }

        $this->prod = Compagnie::find($id);
        $this->Nom_compagnie = $this->prod->Nom_compagnie;
        $this->addresse = $this->prod->addresse;
        $this->contact = $this->prod->contact;
        $this->IDpays_compagnie = $this->prod->IDpays_compagnie;
    }

    public function update(){
        $this->prod = Compagnie::find($this->prod->id);
        

        $this->validate([
            'Nom_compagnie'=>['required', Rule::unique('compagnies')->ignore($this->prod)],
            'addresse'=>['required', Rule::unique('compagnies')->ignore($this->prod)],
            'contact'=>['required', Rule::unique('compagnies')->ignore($this->prod)],
            'IDpays_compagnie'=>['required'],
         ]);
         $path = $this->photo->store('logosCompagnie', 'public');
         Compagnie::where('id', $this->prod->id)->update([
            'Nom_compagnie' =>  $this->Nom_compagnie,
            'addresse' =>  $this->addresse,
            'contact' =>  $this->contact,
            'IDpays_compagnie' =>  $this->IDpays_compagnie,
            'path'=>$path,
            'url'=>Storage::disk('public')->url($path),
        ]);
        $this->success='compagnie mis à jour avec success';
    }

    #[Title('Compagnie d\'assurance')]
    public function render()
    {
        return view('livewire.compagnie.compagnie-edit');
    }
}

© 2025 UnknownSec
afwwrfwafr45458465
Password