Concept Flow - CRUD with Eloquent
Create Model Instance
Set Attributes
Save to DB
Read Data
Update Attributes
Save Changes
Delete Record
End
This flow shows how to create, read, update, and delete records using Eloquent models step-by-step.
use App\Models\Post;
// Create
$post = new Post();
$post->title = 'Hello';
$post->save();| Step | Action | Model State | Database State | Output/Result |
|---|---|---|---|---|
| 1 | Create new Post instance | Post object with no attributes set | No new record | No output |
| 2 | Set title attribute to 'Hello' | Post object with title='Hello' | No new record | No output |
| 3 | Call save() to insert record | Post object saved | New record with title='Hello' added | Record ID assigned |
| 4 | Read record by ID | Post object with title='Hello' | Record exists | Post data retrieved |
| 5 | Update title to 'Hello World' | Post object with title='Hello World' | Record still original | No output |
| 6 | Call save() to update record | Post object saved with new title | Record updated with title='Hello World' | No output |
| 7 | Call delete() on Post | Post object marked deleted | Record removed from DB | No output |
| 8 | Try to read deleted record | No Post object found | No record | Null returned |
| 9 | End of CRUD operations | - | - | - |
| Variable | Start | After Step 2 | After Step 3 | After Step 5 | After Step 6 | After Step 7 | After Step 8 |
|---|---|---|---|---|---|---|---|
| $post | null | Post(title='Hello') | Post(saved with ID) | Post(title='Hello World') | Post(saved updated) | Post(deleted) | null |
CRUD with Eloquent: - Create: new Model(); set attributes; save() - Read: Model::find(id) or queries - Update: change attributes; save() - Delete: call delete() on model Remember: save() writes changes to DB, delete() removes record.