見出し画像

#68 Laravelアウトプット

こんばんは、hiroです😃 今週1週間、一瞬でした。笑
転職・出社をして早くも2週間が経過しました。内定を頂いた際に、6月1日か学習期間を2週間程度設けて臨むか迷いましたが、6月1日から仕事を選択をしてよかったと感じております😁
業務では知らないことが多すぎて相変わらず四苦八苦ですが、充実感はすごくあります。2週間学習を伸ばしても、苦手な所が出ると先送りにしていた可能性があったため、おそらく状況はあまり変わらなかったのかなと感じました。それだったら今知らない事を業務をしながら学習する方が、確実に成長スピードは早いはずなので、この選択をして正解でした!

やること、学習すること、意識することてんこ盛りですが、1日でも早くものにして採用頂いた会社に貢献したいです😃

本日はLaravelの投稿フォーム関連で苦戦したため、フォームに関するアウトプットをしたいと思います🙇‍♂️


ルーティング

// app > routes > web.php //

Route::get('/posts/create', [PostController::class, 'create'])
    ->name('posts.create');

Route::post('/posts/store', [PostController::class, 'store'])
    ->name('posts.store');


コントローラ

// app > Controller > PostController.php //

public function create()
{
    return view(' posts.create ')
}

public function store(Request $Request )
{
    $request->validate([
        'title' => 'reuired|min:3',
        'body' => 'reuired',     
    ]);
    
    $post = new Post();
    $post->title = $request->title;
    $post->body = $request->body;
    $post->save();

    return redirect()
        ->route( 'posts.index')
}


ビュー

// resources > views > create.blade.php  //
<x-layout>
    <x-slot name=" title ">
        Add New Post - My BBS
    </x-slot>

    <div class=" back-link ">
        &laquo; <a href=" {{ route(' posts.index ') }} ">Back</a>
    </div>

    <h1>Add New Post</h1>
    
    <form method=" post " action" {{ route(' posts.store ') }} ">
        @csrf
        <label>
            Title
            <input type=" text " name=" title ">
        </label>
        @error(' title ')
            {{ $message }}
        @enderror
        
        <label>
            Body
            <textarea name=" body "></textarea>
        </label>
        @error(' body ')
            {{ $message }}
        @enderror

        <button>Add</button>
         
</x-layout>


完成内容はこちら↓

画像1


本日、ほろ酔いのため説明文は割愛しております。笑

本日も最後まで読んで頂きありがとうございました!🙇‍♂️


参考文献
ドットインストール Laravel 8 入門 CRUD処理



この記事が気に入ったらサポートをしてみませんか?