質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Laravel 6

Laravel 6は、オープンソースなPHPのフレームワーク。Webアプリケーションの開発に適しており、バージョン6はLTSです。5.8での向上に加えて、セマンティックバージョニングの採用やLaravel Vaporとのコンパチビリティなどが変更されています。

Laravel

LaravelとはTaylor Otwellによって開発された、オープンソースなPHPフレームワークです。Laravelはシンプルで表現的なシンタックスを持ち合わせており、ウェブアプリケーション開発の手助けをしてくれます。

phpMyAdmin

phpMyAdminはオープンソースで、PHPで書かれたウェブベースのMySQL管理ツールのことです。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Q&A

1回答

674閲覧

Laravelのコーディングについて、フォーム画面に関して

takigawa777

総合スコア21

Laravel 6

Laravel 6は、オープンソースなPHPのフレームワーク。Webアプリケーションの開発に適しており、バージョン6はLTSです。5.8での向上に加えて、セマンティックバージョニングの採用やLaravel Vaporとのコンパチビリティなどが変更されています。

Laravel

LaravelとはTaylor Otwellによって開発された、オープンソースなPHPフレームワークです。Laravelはシンプルで表現的なシンタックスを持ち合わせており、ウェブアプリケーション開発の手助けをしてくれます。

phpMyAdmin

phpMyAdminはオープンソースで、PHPで書かれたウェブベースのMySQL管理ツールのことです。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

0グッド

0クリップ

投稿2022/09/06 10:19

編集2022/09/07 02:41

イメージ説明### 前提

LaravelにてAuth::routes();を使ったフォーム画面の実装

実現したいこと

Auth::routes();を使ってユーザー登録画面を作りたいです。

発生している問題・エラーメッセージ

not foundなので恐らくファイルが見つからないと出ています。

View [layouts.not_logged_in] not found. (View: /home/ec2-user/environment/laravel_photo/resources/views/auth/register.blade.php) layouts.not_logged_in was not found.

View [layouts.not_logged_in] not found. (View: /home/ec2-user/environment/laravel_photo/resources/views/auth/register.blade.php)
layouts.not_logged_in was not found.

該当のソースコード

Laravel6
ディレクトリは、画像投稿サイトを作成するため一番上はlaravel_photoというフォルダ名で、その下に今回のファイル・フォルダをそれぞれ作成している状態です。
ルート部分はroutes/web.php、コントローラー部分はapp/Http/Controllers/Auth/RegisterController.phpで、ビューはresources/views/auth/register.blade.phpとresources/views/layouts/not_logged_in.blade.phpとなってます。(いま再度確認しました)
・ルートコード
ファイル名 web.php

php

1<? php 2Auth::routes(); 3 4Route::get('/', function () { 5 // return view('welcome'); 6 return view('top'); 7}); 8Route::resource('posts', 'PostController'); 9 10Route::resource('likes', 'LikeController')->only([ 11 'index', 'store', 'destroy' 12]); 13 14Route::resource('follows', 'FollowController')->only([ 15 'index', 'store', 'destroy' 16]); 17 18folloow', 'FollowController@folloowerIndex')

・コントローラー 
ファイル名 RegisterController.php

php

1<?php 2 3namespace App\Http\Controllers\Auth; 4 5use App\Http\Controllers\Controller; 6use App\Providers\RouteServiceProvider; 7use App\User; 8use Illuminate\Foundation\Auth\RegistersUsers; 9use Illuminate\Support\Facades\Hash; 10use Illuminate\Support\Facades\Validator; 11 12class RegisterController extends Controller 13{ 14 /* 15 |-------------------------------------------------------------------------- 16 | Register Controller 17 |-------------------------------------------------------------------------- 18 | 19 | This controller handles the registration of new users as well as their 20 | validation and creation. By default this controller uses a trait to 21 | provide this functionality without requiring any additional code. 22 | 23 */ 24 // RegisterUsers トレイトを利用 25 use RegistersUsers; 26 27 /** 28 * Where to redirect users after registration. 29 * 30 * @var string 31 */ 32 // ユーザー登録後はホーム画面に移動 33 protected $redirectTo = RouteServiceProvider::HOME; 34 35 /** 36 * Create a new controller instance. 37 * 38 * @return void 39 */ 40 // 未ログインであることを確認 41 public function __construct() 42 { 43 $this->middleware('guest'); 44 } 45 46 /** 47 * Get a validator for an incoming registration request. 48 * 49 * @param array $data 50 * @return \Illuminate\Contracts\Validation\Validator 51 */ 52 // ユーザー登録フォームで用いるバリデーションルールを設定 53 protected function validator(array $data) 54 { 55 return Validator::make($data, [ 56 'name' => ['required', 'string', 'max:255'], 57 'email' => ['required', 'string', 'email', 'max:255', 'unique:users'], 58 'password' => ['required', 'string', 'min:8', 'confirmed'], 59 ]); 60 } 61 62 /** 63 * Create a new user instance after a valid registration. 64 * 65 * @param array $data 66 * @return \App\User 67 */ 68 // ユーザーの生成処理 69 protected function create(array $data) 70 { 71 return User::create([ 72 'name' => $data['name'], 73 'email' => $data['email'], 74 'password' => Hash::make($data['password']), 75 ]); 76 } 77}

・ビュー部分
ファイル名 register.blade.php

php

1@extends('layouts.not_logged_in') 2 3@section('content') 4 <h1>サインアップ</h1> 5 6 <form method="POST" action="{{ route('register') }}"> 7 @csrf 8 <div> 9 <label> 10 ユーザー名: 11 <input type="text" name="name"> 12 </label> 13 </div> 14 15 <div> 16 <label> 17 メールアドレス: 18 <input type="email" name="email"> 19 </label> 20 </div> 21 22 <div> 23 <label> 24 パスワード: 25 <input type="password" name="password"> 26 </label> 27 </div> 28 29 <div> 30 <label> 31 パスワード(確認用): 32 <input type="password" name="password_confirmation" > 33 </label> 34 </div> 35 36 <div> 37 <input type="submit" value="登録"> 38 </div> 39 </form> 40@endsection

ファイル名 not_logged.in.blade.php

php

1@extends('layouts.default') 2 3@section('header') 4<header> 5 <ul class="header_nav"> 6 <li> 7 <a href="{{ route('register') }}"> 8 サインアップ 9 </a> 10 </li> 11 <li> 12 <a href="{{ route('login') }}"> 13 ログイン 14 </a> 15 </li> 16 </ul> 17</header> 18@endsection

試したこと

教科書通りの手順を踏み記述しましたが、念のためファイル名の誤字などに気を付けましたが、エラーが解消されません。

補足情報(FW/ツールのバージョンなど)

Windows10 PHP7_v1

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

m.ts10806

2022/09/06 20:11

ディレクトリ構成、ファイルの配置、位置関係が分かる情報を記載願います。 「教科書通り」と仰っていますが、同じように発言している人の多くがその通りできていません。 ※書籍が間違っている可能性もゼロではないですが、何という書籍のどこの何を というところも提示されないことには確認しようがないです。
takigawa777

2022/09/07 00:42 編集

分かりました。 今回はCodeCampGATEのLaravel6の29章に取り組んでいます。 ディレクトリは、画像投稿サイトを作成するため一番上はlaravel_photoというフォルダ名で、その下に今回のファイル・フォルダをそれぞれ作成している状態です。 ルート部分はroutes/web.php、コントローラー部分はapp/Http/Controllers/Auth/RegisterController.phpで、ビューはresources/views/auth/register.blade.phpとresources/views/layouts/logged_in.blade.phpとなってます。(いま再度確認しました) すみません、質問に不慣れな部分があるので足りない点があればまたご指摘お願いします。
m.ts10806

2022/09/07 00:57

質問は編集できますので、適宜追記を。
m.ts10806

2022/09/07 00:57

あとエラーはnot_logged_inを求めているようなのでlogged_inは問題とは関係ないように思います。
takigawa777

2022/09/07 01:50

すみません、質問を編集しました。 あとlogged_inは書き間違えていて、同じlayoutsフォルダ内にnot_logged_inファイルも入っている状態になります。
m.ts10806

2022/09/07 01:58

コードブロックはファイル毎にわけてもらったほうが助かります。 ブロック内は1クリックでコピペできるので、「余計であろうもの」をこちらの勝手な判断で除くと質問者の状況の再現になりません。 あと、「入っている」だけでは証拠にならないので、 ディレクトリ構成が分かるような情報を提示してください。 別回答のコメントを見ましたが、質問本文に追記されたものと別のコードなので 「どのファイルがどのコードか」も明示されたほうが良いと思います。
takigawa777

2022/09/07 02:15

すみません、今の状態からファイル毎にわける部分が分からなかったのでディレクトリ構成が分かる画像のみ追記しておきました。
takigawa777

2022/09/07 02:21

入れ違いになってしまいすみません。たった今追記しましたので、確認お願いします。
m.ts10806

2022/09/07 02:23 編集

もうちょっと簡単に言うと 先頭から「バッククォート3つずつで囲む」 ことでコードブロックになります。
takigawa777

2022/09/07 02:28

手間を取らせてしまいすみません。 再度確認してブロック毎に分けられたかと思うので、確認お願いします。
m.ts10806

2022/09/07 02:41

いえ、慣れないうちは簡単ではないと思います。 質問テンプレートもちょっと不親切なところはありますね。
takigawa777

2022/09/07 02:42

ありがとうございます。 修正完了しました。
guest

回答1

0

layoutsフォルダにnot_logged_in.blade.phpはありますか?

投稿2022/09/06 10:57

mineralwater

総合スコア289

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

takigawa777

2022/09/06 12:02

はい、あります。正確にはresources/views/layoutsのフォルダの中にあります。 コードはこういう内容になってます。 @extends('layouts.default') @section('header') <header> <ul class="header_nav"> <li> <a href="{{ route('register') }}"> サインアップ </a> </li> <li> <a href="{{ route('login') }}"> ログイン </a> </li> </ul> </header> @endsection
mineralwater

2022/09/09 00:47 編集

ファイル名間違っていませんか? 画像を確認したところnot_logged_in.blade.phpではなく、not_logged.in.blade.phpになってると思います。 そのため、ファイル名を一度変更して動作確認していただけると幸いです。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだベストアンサーが選ばれていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問