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

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

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

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

PHP

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

ルーティング

ルーティングとは、TCP/IPネットワークにおいて、目的のホストまでパケットを送る為のパス選定のプロセスを言います。

最適化

最適化とはメソッドやデザインの最適な処理方法を選択することです。パフォーマンスの向上を目指す為に行われます。プログラミングにおける最適化は、アルゴリズムのスピードアップや、要求されるリソースを減らすことなどを指します。

Q&A

解決済

1回答

698閲覧

Laravelのルーティングでメソッド名をグループ化できない理由が知りたい。

Kchan_01

総合スコア110

Laravel

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

PHP

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

ルーティング

ルーティングとは、TCP/IPネットワークにおいて、目的のホストまでパケットを送る為のパス選定のプロセスを言います。

最適化

最適化とはメソッドやデザインの最適な処理方法を選択することです。パフォーマンスの向上を目指す為に行われます。プログラミングにおける最適化は、アルゴリズムのスピードアップや、要求されるリソースを減らすことなどを指します。

0グッド

0クリップ

投稿2020/06/08 01:07

編集2020/06/10 02:26

laravelのルーティングを行うweb.phpでは、prefixやname関数を使うことで、group化して書くことができるようになっています。
ここで疑問なのですが、接続先のcontrollerについてはまとめる方法が無いようでした。
controller('MainController@')->と書けても良さそうですが、そのような関数が用意されていないのには理由があるのでしょうか。

また、私が知らないだけで、まとめて書く方法があるのでしょうか。ご存知でしたら教えてください。

php

1Route::get('/main/list','MainController@list')->name('main.list'); 2Route::get('/main/edit','MainController@edit')->name('main.edit'); 3Route::get('/main/search','MainController@search')->name('main.search');

php

1Route::prefix('main')->name('main.')->group(function () { 2 Route::get('list','MainController@list')->name('list'); 3 Route::get('edit','MainController@edit')->name('edit'); 4 Route::get('search','MainController@search')->name('search'); 5});

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

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

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

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

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

guest

回答1

0

ベストアンサー

php

1Route::resource('main','MainController');

「リソースコントローラ」の項目をお読みください。
https://readouble.com/laravel/7.x/ja/controllers.html


ちなみに、こうじゃないですか?

diff

1- Route::prefix('main')->name('.main')->group(function () { 2+ Route::prefix('main')->name('main.')->group(function () { 3 Route::get('list','MainController@list')->name('list'); 4 Route::get('edit','MainController@edit')->name('edit'); 5 Route::get('search','MainController@search')->name('search'); 6});

投稿2020/06/08 02:51

編集2020/06/08 08:47
phper.k

総合スコア3923

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

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

Kchan_01

2020/06/08 03:38 編集

リソースコントローラでは、CRUDの基本ルートがすべて用意されているから、その中での基本機能はonlyやexceptで制限しながら使うべきである。 ただ、そこには無いような ```php Route::prefix('articles')->name('articles.')->group(function () { Route::put('/{article}/like', 'ArticleController@like')->name('like')->middleware('auth'); Route::delete('/{article}/like', 'ArticleController@unlike')->name('unlike')->middleware('auth'); }); ``` のような処理は、都度、書けばいいってことでしょうか。
phper.k

2020/06/08 03:44

そうです
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問