過濾 Laravel 用戶以僅顯示上傳的用戶
P粉373990857
P粉373990857 2023-09-03 00:26:34
0
1
658

我想問,如何在用戶1上將文件上傳到網絡,但僅將其附加到用戶1,而目前它也附加到用戶2,我的編碼錯誤。

就像下面的範例圖片一樣: 圖片網

看一下圖片,如果已經上傳了,在「Bahasa Indonesia」SUBJECT 中將其狀態改為Submitted,但是對於用戶2 來說還沒有上傳,但是也變成了Submitted,用戶2 的狀態肯定是Waiting因為還沒有上傳。這裡附上我在用戶1上傳的mysql: ImageMySqli

AssignmentStudentController

公用函數 DataAssignment(){ $userAssignments = 作業::join('subjects', 'assignments.id_subject', '=', 'subjects.id_sub') ->join('class_infos', 'subjects.id_class', '=', 'class_infos.id') ->join('class_details', 'class_infos.id', '=', 'class_details.id_class') ->where('class_details.id_user', '=', Auth::user()->id) -> 獲取(); 返回視圖('student.assignment.data_assignment',緊湊('userAssignments')); }

AssignmentStudentController.php

       <第範圍=“col”類別=“py-3 px-6”>
        主題
        <第範圍=“col”類別=“py-3 px-6”>
         標題
         <第範圍=“col”類別=“py-3 px-6”>
          到期日
          <第範圍=“col”類別=“py-3 px-6”>
           提交日期
           <第範圍=“col”類別=“py-3 px-6”>
            地位
            <第範圍=“col”類別=“py-3 px-6”>
             分數
             <第範圍=“col”類別=“py-3 px-6”>
              行動
              <正文>
               @forelse($userAssignments 為 $data)
              
             
            
           
          
         
        
       
       <第範圍=“行” class="“py-4" px-6 font-medium text-gray-900 whitespace-nowrap dark:text-white”>
        {{$data->subjects->name_subject}}
       
       
{{$data->標題}} {{ date('d M Y - H:m', strtotime($data->due_date)) }} WIB {{ (!empty($data->作業->id_student)) ? date('d M Y - H:m' ,strtotime($data->assignments->updated_at)):'尚未上傳' }} {{ (!empty($data->作業->id_student)) ? '已提交':'等待' }} {{ (!empty($data->作業->id_student)) ? ($data->作業->分數) ? $data->作業->分數:'進程':'0' }} @if(!empty( $data->作業->id_student)) <路徑填入規則=“evenodd” d=「M10 18a8 8 0 100-16 8 8 0 000 16zm1-12a1 1 0 10-2 0v4a1 1 0 00.293.707l2.828 2.829a1 00.293.707l2.828 2.829a1 100. Clip-rule=“evenodd”> @別的 @萬一 id_id)}}”> <路徑填入規則=“evenodd” d=”M6 2a2 2 0 00-2 2v12a2 2 0 002 2h8a2 2 0 002-2V7.414A2 2 0 0015.414 6L12 2.586A2 2 0 0015.4862H 10. 1 1 0 100 2h2v2a1 1 0 102 0v-2h2a1 1 0 100-2h-2V8z” Clip-rule=“evenodd”>
1
0
0
P粉373990857
P粉373990857

全部回覆 (1)
P粉797855790

除了模型中的分配方法之外,您還可以透過定義新方法來進行檢查:

class Assignment extends Model { public function assignments() { return $this->hasMany(::class, 'id_assignment', 'id_id'); } // new method public function checkStudentAssignmentIsNull() { return $this->hasMany(::class, 'id_assignment', 'id_id') ->where('.id_student', Auth::user()->id) ->first() === null; } }

使用時,可以使用!$data->checkStudentAssignmentIsNull()而不是!empty($data->assignments->id_student)

我現在可以更清楚地看到您的表格:

// new method public function checkStudentAssignmentIsNull() { return $this->hasMany(AssignmentDetail::class, 'id_assignment', 'id_id') ->where('assignment_details.id_student', Auth::user()->id) ->first() === null; }
    最新下載
    更多>
    網站特效
    網站源碼
    網站素材
    前端模板
    關於我們 免責聲明 Sitemap
    PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!