簡體   English   中英

在laravel中找到hasmany relationship的結果

[英]Find result with hasmany relationship in laravel

我只是在laravel開始一個項目,這對我來說是一個新的環境。 我熟悉PHP並建立模型關系。 但是laravel結構起初有點復雜。 所以問題是我有一個問題和課程表,一個問題可能有一個以上的課程,所以我又創建了一個包含課程ID和問題ID的表。

問題模型

namespace App\Models;
use Illuminate\Database\Eloquent\Model;

class Question extends Model{

    protected $primaryKey = "id";

    public function courses(){
        return $this->hasMany('App\Models\CourseQuestion');
    }
}

課程模式

namespace App\Models;
use Illuminate\Database\Eloquent\Model;

class Course extends Model {
    protected $primaryKey = "id";

    public function questions(){
        return $this->hasOne('App\Models\CourseQuestion');
    }
} 

最后一個課程問題模型

namespace App\Models;
use Illuminate\Database\Eloquent\Model;

class CourseQuestion extends Model {
    protected $primaryKey = "id";

    public function questions(){
        return $this->hasOne('App\Models\Question');
    }

    public function courses(){
        return $this->hasMany('App\Models\Course');
    }
}

我的控制器在哪里得到結果 -

class IndexController extends BaseController {

    public function index(){
        $user = Question::with('user','courses','branches')->find(100);
        echo "<pre>";
        print_r($user); die;
    }
}

因此,課程只返回當然的id和存儲在第三表中的問題,但我想要課程名稱各自的id。 請幫助謝謝。

namespace App\Models;

use Illuminate\Database\Eloquent\Model;

class Question extends Model
{

    protected $primaryKey = "id";

    public function courses()
    {
        return $this->hasMany('App\Models\CourseQuestion', 'course_question_id', 'id')
         ->select('id', 'name');
    }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM