在laravel中,如何在没有where条件的情况下获取同一数组中的联接表数据
我用这些数据创建了employes和employes_detail选项卡 我已为以下两个表创建了模型:在laravel中,如何在没有where条件的情况下获取同一数组中的联接表数据,laravel,laravel-5,laravel-5.4,Laravel,Laravel 5,Laravel 5.4,我用这些数据创建了employes和employes_detail选项卡 我已为以下两个表创建了模型: emloye模型: 模型中的函数employes\u detail和employe仅声明模型之间的关系,但如果要加载关系,可以尝试以下操作: Employe::with('employes_detail')->get() 或 $employees=employee::all()$员工->加载(“员工详细信息”) 然后,您可以访问每个员工的关系属性,如下所示: 希望对您有所帮助。Employee
emloye模型:
模型中的函数employes\u detail
和employe
仅声明模型之间的关系,但如果要加载关系,可以尝试以下操作:
Employe::with('employes_detail')->get()代码>
或
$employees=employee::all()$员工->加载(“员工详细信息”)代码>
然后,您可以访问每个员工的关系属性,如下所示:
希望对您有所帮助。Employee::with('employes_detail')->all();我尝试了这个方法,但返回了对undefined method Illumb\Database\Query\Builder::all()的错误调用。在您发布之前,我也做了同样的操作,并且成功了。您能解释一下为什么all()不起作用吗all
方法是一个神奇的方法,您只能在模型类上调用它,该函数创建一个查询生成器,指定模型并从查询生成器调用get()
方法。当您使用
方法调用时,它会创建一个查询生成器并分配您传递的关系,然后您可以调用get
方法,这就是区别所在。这就是为什么您可以调用$employees=employee::all()$员工->加载(“关系”)
如果您包括,则需要调用get()
。在Employee_详细信息表中,我有一个字段状态,其中我正在存储状态表的id。现在如何获取SATATE的名称或如何按降序获取数据?您能帮我吗
emloye model:
<?php
namespace App\Http\Model;
use Illuminate\Database\Eloquent\Model;
use App\Http\Model\EmployeDetail;
class Employe extends Model
{
public function employes_detail()
{
return $this->hasOne(EmployeDetail::class);
}
}
<?php
namespace App\Http\Model;
use Illuminate\Database\Eloquent\Model;
class EmployeDetail extends Model
{
public function employe()
{
public function employe()
{
return $this->belongsTo(Employe::class);
}
}
}
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use DB;
use App\Http\Model\Employe;
use App\Http\Model\EmployeDetail;
class EmployeController extends Controller
{
public function index(Request $request)
{
$Employe=Employe::all();
$convert=$Employe->toArray();
echo "<pre>";print_r($convert);exit;
//return view('employe.employe');
}
}
public function index(Request $request)
{
$Employe=Employe::where('id',1)->first();
//$convert=$Employe->toArray();
echo "<pre>";print_r($Employe->employes_detail);exit;
//return view('employe.employe');
}
foreach($employees as $employe) {
$employe->employes_detail->id;
}