<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>Forem: Supak Pukdam</title>
    <description>The latest articles on Forem by Supak Pukdam (@supakjack).</description>
    <link>https://forem.com/supakjack</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F859076%2F6c3f6abe-affd-4fcd-ade2-61893b7cdf12.jpeg</url>
      <title>Forem: Supak Pukdam</title>
      <link>https://forem.com/supakjack</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://forem.com/feed/supakjack"/>
    <language>en</language>
    <item>
      <title>Let's create laravel CRUD example stupid note app.</title>
      <dc:creator>Supak Pukdam</dc:creator>
      <pubDate>Sat, 24 Feb 2024 06:25:53 +0000</pubDate>
      <link>https://forem.com/supakjack/lets-create-laravel-crud-example-note-app-58kp</link>
      <guid>https://forem.com/supakjack/lets-create-laravel-crud-example-note-app-58kp</guid>
      <description>&lt;p&gt;The article will create easy and stupid crud note app step by step for laravel but no login logout.(will do next time)&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Pre requirement&lt;/strong&gt;&lt;br&gt;
&lt;strong&gt;1&lt;/strong&gt;. php 8.x.x (in article is 8.3.3 for laravel 10)&lt;br&gt;
&lt;strong&gt;2&lt;/strong&gt;. composer&lt;br&gt;
&lt;strong&gt;3&lt;/strong&gt;. mysql&lt;br&gt;
&lt;strong&gt;4&lt;/strong&gt;. your github account and config git in you computer.&lt;br&gt;
&lt;strong&gt;5&lt;/strong&gt;. text editor (in article use VSCode)&lt;br&gt;
&lt;strong&gt;6&lt;/strong&gt;. already install laravel in global&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Let's do it&lt;/strong&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;1&lt;/strong&gt;. create project using command &lt;code&gt;laravel new example-note-app&lt;/code&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flhngttbjc0zt5febaedf.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Flhngttbjc0zt5febaedf.png" alt="create new laravel project" width="778" height="402"&gt;&lt;/a&gt;&lt;br&gt;
&lt;br&gt;&lt;br&gt;
&lt;strong&gt;2&lt;/strong&gt;. type and enter &lt;code&gt;none&lt;/code&gt;for start with no starter kit.&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F65tqzcxb1xejgblj9yi1.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F65tqzcxb1xejgblj9yi1.png" alt="start with no starter kit" width="742" height="165"&gt;&lt;/a&gt;&lt;br&gt;
&lt;br&gt;&lt;br&gt;
&lt;strong&gt;3&lt;/strong&gt;. enter for default option, we don't test in this article.&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkvqkixtwm1882hvrpxor.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fkvqkixtwm1882hvrpxor.png" alt="enter for default " width="605" height="141"&gt;&lt;/a&gt;&lt;br&gt;
&lt;br&gt;&lt;br&gt;
&lt;strong&gt;4&lt;/strong&gt;. type and enter &lt;code&gt;yes&lt;/code&gt; for init git.&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1wta516ixc8wobp7tlah.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F1wta516ixc8wobp7tlah.png" alt="init git" width="762" height="82"&gt;&lt;/a&gt;&lt;br&gt;
&lt;br&gt;&lt;br&gt;
&lt;strong&gt;5&lt;/strong&gt;. wait for prompt database, type and enter &lt;code&gt;mysql&lt;/code&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8l8a3gswp1ke1rqpdbfl.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F8l8a3gswp1ke1rqpdbfl.png" alt="mysql database" width="636" height="260"&gt;&lt;/a&gt;&lt;br&gt;
&lt;br&gt;&lt;br&gt;
&lt;strong&gt;6&lt;/strong&gt;. when finish create open your project in editor.&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2a6xurw72w181uf2dp2d.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F2a6xurw72w181uf2dp2d.png" alt="open your project in editor" width="800" height="337"&gt;&lt;/a&gt;&lt;br&gt;
&lt;br&gt;&lt;br&gt;
&lt;strong&gt;7&lt;/strong&gt;. look at *&lt;em&gt;.env *&lt;/em&gt; file in section DB_xxxxx will be like this block.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=example_note_app
DB_USERNAME=root
DB_PASSWORD=
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;you must create databse in same config or change config for you database and must be satndalone database for this project.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgadw94kpwc9s7a6259b3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fgadw94kpwc9s7a6259b3.png" alt="create database same config" width="567" height="335"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3qr6knfwqxlmdesqmamc.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F3qr6knfwqxlmdesqmamc.png" alt="database newer" width="493" height="106"&gt;&lt;/a&gt;&lt;br&gt;
&lt;br&gt;&lt;br&gt;
&lt;strong&gt;8&lt;/strong&gt;. go back to your editor and open terminal for prompt &lt;code&gt;php artisan serve&lt;/code&gt; and terminal will show url if you go to url will display welcome page.&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxxhwvx3bef01amhfwupa.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fxxhwvx3bef01amhfwupa.png" alt="terminal will show url " width="800" height="230"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5sg7wx5h9bb9522kfqi9.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5sg7wx5h9bb9522kfqi9.png" alt="welcome page" width="800" height="337"&gt;&lt;/a&gt;&lt;br&gt;
&lt;br&gt;&lt;br&gt;
&lt;strong&gt;9&lt;/strong&gt;. open second tab in teminal and run command &lt;code&gt;php artisan migrate&lt;/code&gt; for run migration, after run your database shold have tables.&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvax5qseiay0msc1vr8sm.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvax5qseiay0msc1vr8sm.png" alt="run migration" width="761" height="296"&gt;&lt;/a&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Faaf64ff70pauspz70pxh.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Faaf64ff70pauspz70pxh.png" alt="database shold have tables" width="448" height="313"&gt;&lt;/a&gt;&lt;br&gt;
&lt;br&gt;&lt;br&gt;
&lt;strong&gt;10&lt;/strong&gt;. go back to teminal and run command &lt;code&gt;php artisan make:model Note -m&lt;/code&gt; for generate model with migration file for Note.&lt;br&gt;
&lt;br&gt;&lt;br&gt;
&lt;strong&gt;11&lt;/strong&gt;. go to new migration file and change up function to block coded.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;    public function up(): void
    {
        Schema::create('notes', function (Blueprint $table) {
            $table-&amp;gt;id();
            $table-&amp;gt;string('title');
            $table-&amp;gt;text('content');
            $table-&amp;gt;unsignedBigInteger('user_id');
            $table-&amp;gt;foreign('user_id')-&amp;gt;references('id')-&amp;gt;on('users');
            $table-&amp;gt;timestamps();
        });
    }
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;br&gt;&lt;br&gt;
&lt;strong&gt;12&lt;/strong&gt;. run command &lt;code&gt;php artisan migrate&lt;/code&gt; to migration note and check notes table in database.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffwoijmdhmeu6ot1q1r24.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ffwoijmdhmeu6ot1q1r24.png" alt="run migrate" width="741" height="145"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fz83stjld75q8o78d6286.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fz83stjld75q8o78d6286.png" alt="Image description" width="800" height="190"&gt;&lt;/a&gt;&lt;br&gt;
&lt;br&gt;&lt;br&gt;
&lt;strong&gt;13&lt;/strong&gt;. generate resource controller by run command &lt;code&gt;php artisan make:controller NoteController --resource&lt;/code&gt;&lt;br&gt;
&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fteg5hjgl0gibrtyvqyfc.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fteg5hjgl0gibrtyvqyfc.png" alt="resource controller" width="800" height="401"&gt;&lt;/a&gt;&lt;br&gt;
&lt;br&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;14&lt;/strong&gt;. add resource note route to route file for web.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9oessve1xs74m6pusu9k.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9oessve1xs74m6pusu9k.png" alt="add resource note route" width="800" height="537"&gt;&lt;/a&gt;&lt;br&gt;
&lt;br&gt;&lt;br&gt;
&lt;strong&gt;15&lt;/strong&gt;. create note floder in views floder and create 3 files same block.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;h1&amp;gt;Notes&amp;lt;/h1&amp;gt;
@if ($notes-&amp;gt;isEmpty())
    &amp;lt;p&amp;gt;No notes found.&amp;lt;/p&amp;gt;
@else
    &amp;lt;ul&amp;gt;
        @foreach ($notes as $note)
            &amp;lt;li&amp;gt;
                {{ $note-&amp;gt;title }}
                &amp;lt;form action="{{ route('notes.destroy', $note-&amp;gt;id) }}" method="post" style="display: inline;"&amp;gt;
                    @csrf
                    @method('DELETE')
                    &amp;lt;button type="submit"&amp;gt;Delete&amp;lt;/button&amp;gt;
                &amp;lt;/form&amp;gt;
                &amp;lt;a href="{{ route('notes.edit', $note-&amp;gt;id) }}"&amp;gt;Edit&amp;lt;/a&amp;gt;
            &amp;lt;/li&amp;gt;
        @endforeach
    &amp;lt;/ul&amp;gt;
@endif

&amp;lt;a href="{{ route('notes.create') }}"&amp;gt;Create New Note&amp;lt;/a&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;!-- resources/views/note/show.blade.php --&amp;gt;
&amp;lt;h1&amp;gt;{{ $note-&amp;gt;title }}&amp;lt;/h1&amp;gt;
&amp;lt;p&amp;gt;{{ $note-&amp;gt;content }}&amp;lt;/p&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;!-- resources/views/note/edit.blade.php --&amp;gt;
&amp;lt;h1&amp;gt;Edit Note&amp;lt;/h1&amp;gt;
&amp;lt;form action="{{ route('notes.update', $note-&amp;gt;id) }}" method="post"&amp;gt;
    @csrf
    @method('PUT')
    &amp;lt;label for="title"&amp;gt;Title:&amp;lt;/label&amp;gt;&amp;lt;br&amp;gt;
    &amp;lt;input type="text" id="title" name="title" value="{{ $note-&amp;gt;title }}"&amp;gt;&amp;lt;br&amp;gt;
    &amp;lt;label for="content"&amp;gt;Content:&amp;lt;/label&amp;gt;&amp;lt;br&amp;gt;
    &amp;lt;textarea id="content" name="content"&amp;gt;{{ $note-&amp;gt;content }}&amp;lt;/textarea&amp;gt;&amp;lt;br&amp;gt;
    &amp;lt;button type="submit"&amp;gt;Update&amp;lt;/button&amp;gt;
&amp;lt;/form&amp;gt;

&amp;lt;a href="{{ route('notes.index') }}"&amp;gt;Back to Notes&amp;lt;/a&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;!-- resources/views/note/create.blade.php --&amp;gt;
&amp;lt;h1&amp;gt;Create Note&amp;lt;/h1&amp;gt;
&amp;lt;form action="{{ route('notes.store') }}" method="post"&amp;gt;
    @csrf
    &amp;lt;label for="title"&amp;gt;Title:&amp;lt;/label&amp;gt;&amp;lt;br&amp;gt;
    &amp;lt;input type="text" id="title" name="title"&amp;gt;&amp;lt;br&amp;gt;
    &amp;lt;label for="content"&amp;gt;Content:&amp;lt;/label&amp;gt;&amp;lt;br&amp;gt;
    &amp;lt;textarea id="content" name="content"&amp;gt;&amp;lt;/textarea&amp;gt;&amp;lt;br&amp;gt;
    &amp;lt;button type="submit"&amp;gt;Create&amp;lt;/button&amp;gt;
&amp;lt;/form&amp;gt;

&amp;lt;a href="{{ route('notes.index') }}"&amp;gt;Back to Notes&amp;lt;/a&amp;gt;
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5xa14cce3rdf3ullw3l7.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F5xa14cce3rdf3ullw3l7.png" alt="Image description" width="510" height="301"&gt;&lt;/a&gt;&lt;br&gt;
&lt;br&gt;&lt;br&gt;
&lt;strong&gt;16&lt;/strong&gt;. edit note model like this block.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;?php

namespace App\Models;

use Illuminate\Database\Eloquent\Factories\HasFactory;
use Illuminate\Database\Eloquent\Model;

class Note extends Model
{
    use HasFactory;

    protected $fillable = [
        'title', 
        'content',
        'user_id'
    ];
}
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;br&gt;&lt;br&gt;
&lt;strong&gt;17&lt;/strong&gt;. edit note controller like this block.&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;&amp;lt;?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use App\Models\Note;
use App\Models\User;

class NoteController extends Controller
{
    public function index()
    {
        $notes = Note::all();
        return view('note.index', compact('notes'));
    }

    public function create()
    {
        return view('note.create');
    }

    public function store(Request $request)
    {
        $note = new Note();
        $note-&amp;gt;fill($request-&amp;gt;all());
        $user = User::first();
        $note-&amp;gt;user_id = $user-&amp;gt;id;
        $note-&amp;gt;save();

        return redirect()-&amp;gt;route('notes.index');
    }

    public function show($id)
    {
        $note = Note::findOrFail($id);
        return view('note.show', compact('note'));
    }

    public function edit($id)
    {
        $note = Note::findOrFail($id);
        return view('note.edit', compact('note'));
    }

    public function update(Request $request, $id)
    {
        $note = Note::findOrFail($id);
        $note-&amp;gt;update($request-&amp;gt;all());
        return redirect()-&amp;gt;route('notes.index');
    }

    public function destroy($id)
    {
        $note = Note::findOrFail($id);
        $note-&amp;gt;delete();
        return redirect()-&amp;gt;route('notes.index');
    }
}


&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;





&lt;p&gt;&lt;strong&gt;18&lt;/strong&gt;. edit &lt;strong&gt;DatabaseSeeder.php&lt;/strong&gt; ilke block&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;
&amp;lt;?php

namespace Database\Seeders;

// use Illuminate\Database\Console\Seeds\WithoutModelEvents;
use Illuminate\Database\Seeder;

class DatabaseSeeder extends Seeder
{
    /**
     * Seed the application's database.
     */
    public function run(): void
    {
        \App\Models\User::firstOrCreate([
            'name' =&amp;gt; 'Test User',
            'email' =&amp;gt; 'test@example.com',
            'password' =&amp;gt; 'testpassword',
        ]);
    }
}

&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;and run &lt;code&gt;php artisan db:seed&lt;/code&gt; will generate mock user for test insert to note&lt;br&gt;
&lt;br&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;19&lt;/strong&gt;. go your app url with &lt;strong&gt;/notes&lt;/strong&gt; and let's play. &lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F72s2w9o8gky98w3ysh5d.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F72s2w9o8gky98w3ysh5d.png" alt="Image description" width="743" height="383"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvdbb8u5qqe87zkcg82fq.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media.dev.to/cdn-cgi/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fvdbb8u5qqe87zkcg82fq.png" alt="Image description" width="540" height="336"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;20&lt;/strong&gt;. let push your code to github.I will come back to add login, logout in future.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://github.com/supakjack/example-note-app"&gt;https://github.com/supakjack/example-note-app&lt;/a&gt;&lt;/p&gt;

</description>
      <category>beginners</category>
      <category>laravel</category>
    </item>
  </channel>
</rss>
