タスク管理webアプリを作っていて、下記のコードを参考にしているうちに、Auth::check()と\Auth::check()の違いが気になり調べていました。
Auth::check()はViewで使われておりファサードだとわかりました。
しかしviewファイルにはuse Illuminate\Support\Facades\Auth;とはかかれていません。
\Auth::check()はcontrollerで使われており""が頭についています。
これはuse Illuminate\Support\Facades;とはかかれていません。
場所によって""がついたりつかなかったりの理由がわかりません。
どなたかご教授願えませんでしょうか?
TasksController.php
php
1<?php 2 3namespace App\Http\Controllers; 4 5use Illuminate\Http\Request; 6use App\Task; 7 8class TasksController extends Controller 9{ 10 /** 11 * Display a listing of the resource. 12 * 13 * @return \Illuminate\Http\Response 14 */ 15 public function index() 16 { 17 $data = []; 18 19 if (\Auth::check()) { 20 $user = \Auth::user(); 21 //これで自分のものしか見れない 22 $tasks = $user->tasks()->orderBy('created_at', 'desc')->paginate(10); 23 $data=['user'=>$user, 'tasks'=>$tasks,]; 24 25 return view('tasks_views.index', $data); 26 }else { 27 return view('welcome'); 28 } 29 30 31 }
index.blade.php
php
1@extends('layouts.app') 2 3@section('content') 4 @if (Auth::id()==$user->id) 5 <table class="table table-striped"> 6 <thead> 7 <tr> 8 <th>id</th> 9 <th>status</th> 10 <th>content</th> 11 </tr> 12 </thead> 13 <tbody> 14 15 @foreach ($tasks as $task) 16 <tr> 17 <td>{!! link_to_route('tasks.show', $task->id, ['id' => $task->id]) !!}</td> 18 <td>{{ $task->status }}</td> 19 <td>{{ $task->content }}</td> 20 </tr> 21 @endforeach 22 23 </tbody> 24 </table> 25 26 {!! link_to_route('tasks.create', 'submit new task', null, ['class' => 'btn btn-primary']) !!} 27 @else 28 <div class="center jumbotron"> 29 <div class="text-center"> 30 <h1>Welcome to the Microposts</h1> 31 {!! link_to_route('signup.get', 'Sign up now!', null, ['class' => 'btn btn-lg btn-primary']) !!} 32 </div> 33 </div> 34 @endif 35@endsection
あなたの回答
tips
プレビュー