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

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

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

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

MVC

MVC(Model View Controller)は、オブジェクト指向プログラミングにおけるモデル・ビュー・コントローラーの総称であり、ソフトフェア開発で使われている構築パターンとしても呼ばれます。

XAMPP

XAMPP(ザンプ)は、ウェブアプリケーションの実行に必要なフリーソフトウェアをパッケージングしたApacheディストリビューションです。 XAMPPひとつインストールするだけで、Apache、MySQL、PHP、Perlなどのソフトウェアと、 phpMyAdminなどの管理ツール、SQLiteなどのソフトウェアやライブラリモジュールなどを利用することが可能です。

Blade

Bladeとは、 PHPフレームワークのLaravelで使用することができるテンプレートエンジンです。テンプレートの継承とエスケープ機能を提供します。

Q&A

解決済

2回答

2104閲覧

Laravelでテンプレートを読み込めません

ranerane0101

総合スコア70

Laravel

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

MVC

MVC(Model View Controller)は、オブジェクト指向プログラミングにおけるモデル・ビュー・コントローラーの総称であり、ソフトフェア開発で使われている構築パターンとしても呼ばれます。

XAMPP

XAMPP(ザンプ)は、ウェブアプリケーションの実行に必要なフリーソフトウェアをパッケージングしたApacheディストリビューションです。 XAMPPひとつインストールするだけで、Apache、MySQL、PHP、Perlなどのソフトウェアと、 phpMyAdminなどの管理ツール、SQLiteなどのソフトウェアやライブラリモジュールなどを利用することが可能です。

Blade

Bladeとは、 PHPフレームワークのLaravelで使用することができるテンプレートエンジンです。テンプレートの継承とエスケープ機能を提供します。

0グッド

0クリップ

投稿2021/01/24 12:55

編集2021/01/24 12:56

https://qiita.com/Alesion30/items/95222f62904ef46f6f45←学習サイト
環境ーWindows 、XAMPP

Symfony\Component\Routing\Exception\RouteNotFoundException Route [submit] not defined. (View: C:\xampp\htdocs\memoApp\resources\views\home.blade.php) http://localhost/memoApp/public/home
Symfony\Component\Routing\Exception\RouteNotFoundException Route [home] not defined. (View: C:\xampp\htdocs\memoApp\resources\views\submit.blade.php) http://localhost/memoApp/public/submit

該当ソース

home.blade.php

@extends('layouts.app') @section('css') <style> header { height: 50px; background-color: #000; color: white; padding-left: 20px; font-size: large; color: #ddd; } .title { position: absolute; top: 10px; } .card { margin-top: 40px; } .left { width: 70%; } .submit { position: absolute; top: 10px; right: 20px; } </style> @endsection @section('content') <div class="card" style="width: 100%;"> <div class="card-header"> メモ一覧 <a href="{{ route('submit')}}" class="submit">メモを追加</a> </div> <table class="table"> <tbody> <tr> <td class="left">メモ1</td> <td><a href="{{ route('submit')}}">編集</a></td> <td><a>削除</a></td> </tr> <tr> <td class="left">メモ2</td> <td><a href="{{ route('submit')}}">編集</a></td> <td><a>削除</a></td> </tr> <tr> <td class="left">メモ3</td> <td><a href="{{ route('submit')}}">編集</a></td> <td><a>削除</a></td> </tr> </tbody> </table> </div> @endsection

submit.blade.php

@extends('layouts.app') @section('css') <style> header { height: 50px; background-color: #000; padding-left: 20px; font-size: large; color: #ddd; } .title { position: absolute; top: 10px; } .container { margin-top: 40px; } </style> @endsection @section('content') <form> <div class="form-group"> <label for="title">タイトル</label> <input type="text" class="form-control" id="title" name="title"> </div> <div class="form-group"> <label for="content">内容</label> <input type="text" class="form-control" id="content" name="content"> </div> <a href="{{ route('home')}}" class="btn btn-primary">戻る</a> <button type="submit" class="btn btn-success">追加</button> </form> @endsection

web.php

<?php use Illuminate\Support\Facades\Route; use App\Http\Controllers\MemoController; /* |-------------------------------------------------------------------------- | Web Routes |-------------------------------------------------------------------------- | | Here is where you can register web routes for your application. These | routes are loaded by the RouteServiceProvider within a group which | contains the "web" middleware group. Now create something great! | */ Route::get('blade', function () { return view('home',); }); Route::get('blade', function () { return view('submit'); }); Route::get('/', function () { return view('welcome'); }); // 第一引数に相対パス、第二引数に関数を指定する Route::get('/home', [App\Http\Controllers\MemoController::class,'showHome'])->name('home'); Route::get('/submit', [App\Http\Controllers\MemoController::class,'showSubmit'])->name('submit'); // Route::get('/home', [App\Http\Controllers\MemoController::class,'showHome']); // // Route::get('/submit', [App\Http\Controllers\MemoController::class,'showSubmit']);

MemoController.php

<?php namespace App\Http\Controllers; use Illuminate\Http\Request; class MemoController extends Controller { // home.blade.phpを表示 public function showHome() { return view('home'); } // submit.blade.phpを表示 public function showSubmit() { return view('submit'); } }

https://readouble.com/laravel/8.x/ja/blade.htmlここのサイトを見てテンプレートの読み込みとか確認したのですが、自分のレベルだと解決できません。

・試したことはコメントアウトしたところと

Route::get('blade', function () { return view('home',); }); Route::get('blade', function () { return view('submit'); });

これを書いたことです。

(Laravel8.24.0)

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

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

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

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

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

guest

回答2

0

自己解決

色々訳が分からなくなったのでバージョンを落としてやり直したら解決出来ました。初学者は最新のバージョンでやると対処しにくいことが知れてよかったです。

投稿2021/01/28 03:27

ranerane0101

総合スコア70

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

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

0

テンプレートの読み込みに関することが原因ではない。

Route [submit] not defined.

Routeの [sbumit] って名前なんか知らないよ。って怒っているのでルーティングが正しく書けていないと検討をつける。該当するルーティングファイルを見てみても良いが,php artisan route:listでルーティングの一覧を出力することができるので,本当に submit がないかなど調査してみる。

単純にviewを返すだけならこれでいい

PHP

1<?php 2 3use Illuminate\Support\Facades\Route; 4 5Route::view('/', 'welcome')->name('welcome'); 6Route::view('home', 'home')->name('home'); 7Route::view('submit', 'submit')->name('submit');

Controllerを用いた場合

PHP

1<?php 2 3use Illuminate\Support\Facades\Route; 4 5use App\Http\Controllers\MemoController; 6 7Route::get('home', [MemoController::class, 'showHome'])->name('home'); 8Route::get('submit', [MemoController::class, 'showSubmit'])->name('submit');

投稿2021/01/24 14:18

編集2021/01/25 05:42
kai0310

総合スコア2076

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

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

ranerane0101

2021/01/28 03:32

参考サイトにはすべてのソースが書いているわけではなく、今回の場合だと->name('home');この部分が名前なんて知らないに該当する場所だったらしいです。色々試してのそれだったのでそれだけがエラーの原因だとは断定できないですが、バージョンを落としてやるのが一番近道でした。返答遅くなりすみません。
kai0310

2021/01/28 07:02

直接的な原因でないのに,それで解決されていいのですか?と思った次第ですが,まぁこれ以上言うこともないので。
kai0310

2021/01/28 07:03

低評価を押された方は具体的になぜ低評価を押したのか教えていただけると改善することができますのでコメントしていただけると幸いです。 (質問者さん宛に言ってるわけではありません)
ranerane0101

2021/01/28 07:19

そうですね、今となってはバージョンも変えてしまったので最新のバージョンでもう一度やったら躓いてしまうかもしれませんが、これからは出来るだけ参考サイトにバージョンを合わせて善処します。申し訳ありません。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.35%

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

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

質問する

関連した質問