Files
shahrzadzandi09/app/Http/Controllers/admin/CityController.php
T

56 lines
1.6 KiB
PHP

<?php
namespace App\Http\Controllers\Admin;
use App\Http\Controllers\Controller;
use App\Http\Requests\CityStoreRequest;
use App\Http\Requests\CityUpdateRequest;
use App\Models\City;
use App\Models\Province;
use Illuminate\Http\Request;
class CityController extends Controller
{
public function index(Request $request)
{
$query = City::with('province');
if ($request->filled('province_id')) {
$query->where('province_id', $request->province_id);
}
$cities = $query->paginate(20);
$provinces = Province::all();
return view('admin.cities.index', compact('cities', 'provinces'));
}
public function create()
{
$provinces = Province::all();
return view('admin.cities.create', compact('provinces'));
}
// استفاده از CityRequest به جای Request
public function store(CityStoreRequest $request)
{
City::create($request->validated());
return redirect()->route('admin.locations.cities.index')->with('success', 'شهر با موفقیت ایجاد شد.');
}
public function edit(City $city)
{
$provinces = Province::all();
return view('admin.cities.edit', compact('city', 'provinces'));
}
public function update(CityUpdateRequest $request, City $city)
{
$city->update($request->validated());
return redirect()->route('admin.locations.cities.index')->with('success', 'شهر ویرایش شد.');
}
public function destroy(City $city)
{
$city->delete();
return back()->with('success', 'شهر حذف شد.');
}
}