2017-12-14 9 views
0

Laravel 블레이드 파일에 인증 된 사용자 ID에 따라 다른 항목을 표시해야합니다. 이것은 내가 표시해야 할 첫 번째 조건입니다 : if-else 조건에 따라 Laravel 블레이드 파일 항목을 표시하는 방법은 무엇입니까?

@foreach ($task->comments as $comment) 
@if(auth()->user()->id == $task->user_id) 
    <div> 
        <div><i class="fa fa-check-square-o"></i> 
        <span>{{ $comment->comments }} by 
         <span style="font-style: italic;color: #09f;"> 
         {{ ($comment->user()->first()->username === auth()->user()->username) ? 'You' : $comment->user()->first()->username }} 
         </span> 
        </span></div> 
        <a href="/projects/{{ $task->project->id }}/comments/{{ $comment->id }}/edit">Edit</a> 
        <button class="btn btn-danger delete pull-right" 
         data-action="/projects/{{ $task->project->id }}/comments/{{ $comment->id }}" 
         data-token="{{csrf_token()}}"> 
        <i class="fa fa-trash-o"></i>Delete 
        </button> 
       </div> 
       <hr/> 
@endif 
@endforeach 
<form class="form-vertical" role="form" method="post" action="{{ route('projects.comments.create', ['projectId'=> $project->id, 'taskId'=>$task->id])}}"> 
     <div class="form-group{{ $errors->has('comments') ? ' has-error' : '' }}"> 
      <textarea name="comments" class="form-control" style="width:80%;" id="comment" rows="5" cols="5"></textarea> 
      @if ($errors->has('comments')) 
       <span class="help-block">{{ $errors->first('comments') }}</span> 
      @endif 
     </div> 

     <div class="form-group"> 
      <button type="submit" class="btn btn-info">Add Comment</button> 
     </div> 
     <input type="hidden" name="_token" value="{{ csrf_token() }}"> 
    </form> 
</div> 

조건이 위의에 맞지 않는, 나는 다음과 같은 조건을 표시해야하는 경우

:

@else 
<div><i class="fa fa-check-square-o"></i> 
        <span>{{ $comment->comments }} by 
         <span style="font-style: italic;color: #09f;"> 
         {{ ($comment->user()->first()->username === auth()->user()->username) ? 'You' : $comment->user()->first()->username }} 
         </span> 
        </span></div> 
<form class="form-vertical" role="form" method="post" action="{{ route('projects.comments.create', ['projectId'=> $project->id, 'taskId'=>$task->id])}}"> 
     <div class="form-group{{ $errors->has('comments') ? ' has-error' : '' }}"> 
      <textarea name="comments" class="form-control" style="width:80%;" id="comment" rows="5" cols="5"></textarea> 
      @if ($errors->has('comments')) 
       <span class="help-block">{{ $errors->first('comments') }}</span> 
      @endif 
     </div> 

     <div class="form-group"> 
      <button type="submit" class="btn btn-info">Add Comment</button> 
     </div> 
     <input type="hidden" name="_token" value="{{ csrf_token() }}"> 
    </form> 

내가 어떻게 할 수 있습니까?

+0

주 간단한 예제를이 시도하고 당신이 원하는 무엇을? – OIIO

+0

실제로 현재 문제는 Auth 사용자로 로그인 할 때 여기에 주석 상자를 표시하지 않았다는 것입니다. – DNK

+0

아이디어가 있습니까? – DNK

답변

0

현재의 문제를 코드 내가 편집 한

@foreach ($task->comments as $comment) 
@if(auth()->user()->id == $task->user_id) 
    <div> 
        <div><i class="fa fa-check-square-o"></i> 
        <span>{{ $comment->comments }} by 
         <span style="font-style: italic;color: #09f;"> 
         {{ ($comment->user()->first()->username === auth()->user()->username) ? 'You' : $comment->user()->first()->username }} 
         </span> 
        </span></div> 
        <a href="/projects/{{ $task->project->id }}/comments/{{ $comment->id }}/edit">Edit</a> 
        <button class="btn btn-danger delete pull-right" 
         data-action="/projects/{{ $task->project->id }}/comments/{{ $comment->id }}" 
         data-token="{{csrf_token()}}"> 
        <i class="fa fa-trash-o"></i>Delete 
        </button> 
       </div> 
       <hr/> 
@else 
<div><i class="fa fa-check-square-o"></i> 
        <span>{{ $comment->comments }} by 
         <span style="font-style: italic;color: #09f;"> 
         {{ ($comment->user()->first()->username === auth()->user()->username) ? 'You' : $comment->user()->first()->username }} 
         </span> 
        </span></div> 
@endif 
@endforeach 
<form class="form-vertical" role="form" method="post" action="{{ route('projects.comments.create', ['projectId'=> $project->id, 'taskId'=>$task->id])}}"> 
     <div class="form-group{{ $errors->has('comments') ? ' has-error' : '' }}"> 
      <textarea name="comments" class="form-control" style="width:80%;" id="comment" rows="5" cols="5"></textarea> 
      @if ($errors->has('comments')) 
       <span class="help-block">{{ $errors->first('comments') }}</span> 
      @endif 
     </div> 

     <div class="form-group"> 
      <button type="submit" class="btn btn-info">Add Comment</button> 
     </div> 
     <input type="hidden" name="_token" value="{{ csrf_token() }}"> 
    </form> 
</div> 
+0

당신의 솔루션은 작동하지만 편집 및 삭제 버튼 만 필요합니다. 인증 사용자가 아니고 인증 사용자가 아닙니다. 편집 및 삭제 버튼을 표시하지 않았습니다. – DNK

+0

물론입니다. 위의 출력을 보여 주시겠습니까. –