Created FilamentTypeController & FilamentType Model

This commit is contained in:
2025-03-10 19:28:46 +01:00
parent 9fd01ee43a
commit 21f33383ae
15 changed files with 404 additions and 5 deletions
@@ -0,0 +1,87 @@
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Models\FilamentType;
class FilamentTypeController extends Controller
{
/**
* Display a listing of the resource.
*/
public function index()
{
$types = FilamentType::all();
return view('types.index', compact('types'));
}
/**
* Show the form for creating a new resource.
*/
public function create()
{
//
return view('types.create');
}
/**
* Store a newly created resource in storage.
*/
public function store(Request $request)
{
//
$type = new FilamentType();
$type->name = $request->name;
$type->description = $request->description;
$type->save();
return redirect()->route('types.index');
}
/**
* Display the specified resource.
*/
public function show(string $id)
{
// Show Single Type
$type = FilamentType::find($id);
return view('types.show', compact('type'));
}
/**
* Show the form for editing the specified resource.
*/
public function edit(string $id)
{
//
$type = FilamentType::find($id);
return view('types.edit', compact('type'));
}
/**
* Update the specified resource in storage.
*/
public function update(Request $request, string $id)
{
// Store updated type
$type = FilamentType::find($id);
$type->name = $request->name;
$type->description = $request->description;
$type->save();
return redirect()->route('types.show', $type->id);
}
/**
* Remove the specified resource from storage.
*/
public function destroy(string $id)
{
// Delete Type
$type = FilamentType::find($id);
$type->delete();
return redirect()->route('types.index')->with('success','Type deleted successfully.');
}
}
+26
View File
@@ -0,0 +1,26 @@
<?php
namespace App\Livewire;
use Livewire\Component;
use App\Models\FilamentType;
class CreateFilamentType extends Component
{
public $name = "";
public $decription = "";
public function save()
{
FilamentType::create(
$this->only(['name', 'description'])
);
session()->flash('status', 'Filament Type Created Successfully.');
return redirect()->route('filamenttype.list');
}
public function render()
{
return view('filamenttype.create');
}
}
+15
View File
@@ -0,0 +1,15 @@
<?php
namespace App\Models;
use Illuminate\Database\Eloquent\Model;
class FilamentType extends Model
{
protected $table = 'filament_types';
protected $fillable = [
'name',
'description',
];
}