在laravel 4中插入一些表格的行

Jus*_*ser 6 php laravel eloquent laravel-4

我有主题表包含

id  name 
Run Code Online (Sandbox Code Playgroud)

和包含的语言表

id subject_id
Run Code Online (Sandbox Code Playgroud)

和分区表

id name 
Run Code Online (Sandbox Code Playgroud)

最后主题分表(数据透视表)

id subject_id  division_id
Run Code Online (Sandbox Code Playgroud)

现在主题表和语言表之间存在一对一的关系,主题表和分表之间存在多对多的关系,我需要通过使用关系函数来选择没有语言的主题表的主题

现在我可以得到语言只有关系功能的主题表在分割模型,如下

    public function langSubject ()
{
    return $this->belongsToMany('Subject' , 'subject_division','division_id','subject_id')
                ->join('lang_subject', 'lang_subject.subject_id' ,'=', 'subject.id')->get();

}
Run Code Online (Sandbox Code Playgroud)

但到目前为止,我只能在没有语言的情况下才能获得这些科目

有什么建议 ?

小智 0

您需要在 join 语句之后添加子句 ->select('tableName1.fieldName1','tableName2.fieldName2','tableName3.fieldName3') 来获取 tableName.fieldName,并且您可能需要使用 leftJoin 而不是join 来获取结果,无论是否匹配。