mirror of
https://github.com/10h30/Test-Laravel-Eloquent-Basics.git
synced 2026-07-11 10:55:52 +09:00
Task 11 - observers
This commit is contained in:
@@ -3,6 +3,7 @@
|
||||
namespace App\Http\Controllers;
|
||||
|
||||
use App\Models\Project;
|
||||
use App\Models\Stat;
|
||||
use Illuminate\Http\Request;
|
||||
|
||||
class ProjectController extends Controller
|
||||
@@ -38,4 +39,16 @@ class ProjectController extends Controller
|
||||
|
||||
return view('projects.index', compact('projects'));
|
||||
}
|
||||
|
||||
public function store_with_stats(Request $request)
|
||||
{
|
||||
// TASK: on creating a new project, create an Observer event to run SQL
|
||||
// update stats set projects_count = projects_count + 1
|
||||
$project = new Project();
|
||||
$project->name = $request->name;
|
||||
$project->save();
|
||||
|
||||
return redirect('/')->with('success', 'Project created');
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -0,0 +1,13 @@
|
||||
<?php
|
||||
|
||||
namespace App\Models;
|
||||
|
||||
use Illuminate\Database\Eloquent\Factories\HasFactory;
|
||||
use Illuminate\Database\Eloquent\Model;
|
||||
|
||||
class Stat extends Model
|
||||
{
|
||||
use HasFactory;
|
||||
|
||||
protected $fillable = ['users_count', 'projects_count'];
|
||||
}
|
||||
Reference in New Issue
Block a user