<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                筆者最近入手ThinkPHP5,準備用它來實現一個學生作業管理系統。簡單的說就是學生在上面交老師布置的課程作業,老師也可以發布修改作業。過程勢必會牽涉到學生、班級和老師之間的關系。它們之間有的關系是多對多的關系。 下面我們主要分析班級和作業的關系。每個班級的學生可以有多個作業,同樣的作業也可以布置給不同的班級。所以班級和作業之間的關系是多對多的關系。可以按照這個邏輯將表分為:班級表(tb_clas),作業表(tb_task),中間表(tb_task_class)。下面寫Model層代碼,將Model層細分為logic層、service層、Model層(將數據與邏輯分開)。 Model層代碼如下: 1.班級(clas.php) ~~~ <?php namespace app\index\model; use think\Model; class Clas extends Model { public function task() { return $this->belongsToMany('Task','tb_task_clas'); } } ~~~ 2.作業(task.php) ~~~ <?php namespace app\index\model; use think\Model; class Task extends Model { public function clas() { return $this->belongsToMany('Clas','tb_task_clas'); } } ~~~ 這樣班級和作業模型之間的多對多關系就建立了。 下面來實現查找某個學生所有被布置的作業列表。這又牽涉到學生表tb_Student,我們在學生模型的logic中來寫這個邏輯(將數據與處理分開)。 3.學生模型的Logic層 ~~~ <?php namespace app\index\logic; use think\Model; use app\index\model\Clas; class Student extends Model { //獲取學生所在班級的所有作業 public function getTasks($stuno) { $stu=$this::get(['stu_no'=>$stuno]); $clas=Clas::get(['clas_id'=>$stu['clas_id']]); return $clas->task; } } ~~~ 這樣在controller中實例化該logic后就可以查找任意學生所要做的作業了,Controller中代碼如下: ~~~ $stulogic=\think\Loader::model('Student','logic'); $stuno=$request->session('stuno'); //dump($stulogic->getTasks($stuno)); $tasklist=$stulogic->getTasks($stuno); //dump($tasklist); $this->assign('tasklist',$tasklist); ~~~ 頁面中用一個volist就可以搞定了: ~~~ {volist name="tasklist" id="task"} <li> <h4>{$task.task_title}</h4> <p>{$task.task_content}</p> </li> {/volist} ~~~
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看