ホームページ > PHPフレームワーク > Laravel > Laravel view() と redirect() を使用していますか?

Laravel view() と redirect() を使用していますか?

藏色散人
リリース: 2020-11-10 14:41:19
転載
2873 人が閲覧しました

以下は、#Laravel のチュートリアルコラムで、Laravel のビュー view() とリダイレクト redirect() を紹介します。

1. view() の使用

単純にビューに戻る

// 所传的参数是blade模板的路径
// 如果目录是 resources/views/static_pages/home.blade.php 则可以使用
return view('static_pages/home');
或
return view('static_pages.home');
ログイン後にコピー

データをビューに渡す

$title = 'Hello Laravel';
$user = User::find(1);
// view() 的第二个参数接受一个数组
return view('static_pages/home', compact('user')); 
return view('articles.lists')->with('title',$title);
// 所传递的变量在blade模板中用 {{ $title }} 或 {!! $title !!} 输出
// 前者作为文本输出,后者作为页面元素渲染
ログイン後にコピー

2. redirect() の使用

URL ベースのリダイレクト

// 假设我们当前的域名为:http://localhost  则重定向到 http://localhost/home
return redirect('home');
ログイン後にコピー

ルートベースのリダイレクト

return redirect()->route('home');
ログイン後にコピー

コントローラーベースのリダイレクト

return redirect()->action('UserController@index')
ログイン後にコピー

データの転送

return redirect('home')->with('title', 'Hello Laravel');
// 将表单值保存到 Session 中,可以用 {{ old('param') }} 来获取
return redirect('home')->withInput();
// 接收一个字符串或数组,传递的变量名为 $errors
return redirect('home')->withErrors('Error');
ログイン後にコピー

その他の使用法

// 返回登录前的页面,参数为默认跳转的页面
redirect()->intended(route('home')); 
// 返回上一个页面,注意避免死循环
redirect()->back();
ログイン後にコピー

3. view() または redirect() の使用の選択

view( ) とredirect()

return view() を使用しても、現在アクセスしている URL は変更されません。return redirect() は、現在アクセスしている URL を変更します。

return view() を使用しても、Flash は無効になりません。現在のセッションですが、return redirect() は Flash を無効にします

RESTful アーキテクチャでは、Get メソッドにアクセスする場合は return view() を使用し、他のメソッドにアクセスする場合は return redirect() を使用することをお勧めします

以上がLaravel view() と redirect() を使用していますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

関連ラベル:
ソース:csdn.net
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート