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

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

藏色散人
藏色散人転載
2020-11-10 14:41:192793ブラウズ

以下は、#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 までご連絡ください。