Php laravel如何访问一对多关系中的数据

Php laravel如何访问一对多关系中的数据,php,laravel,foreign-keys,one-to-many,Php,Laravel,Foreign Keys,One To Many,我的模型项目和任务之间有一对多的关系。我不知道如何通过项目表中的数据访问任务表中的数据。我试图通过{{$projects->task->taskname}}等访问任务的名称,但它不允许我访问。我基本上是想在我的视图中显示所有项目及其所有任务 我的桌子如下所示 任务: id |项目id |任务名称|描述|时间估计|任务状态|创建时间|更新时间| 项目: id | projectname | projectnamenospace | projectdescription |创建于|更新于| 我的模型

我的模型项目和任务之间有一对多的关系。我不知道如何通过项目表中的数据访问任务表中的数据。我试图通过
{{$projects->task->taskname}}
等访问任务的名称,但它不允许我访问。我基本上是想在我的视图中显示所有项目及其所有任务

我的桌子如下所示

任务: id |项目id |任务名称|描述|时间估计|任务状态|创建时间|更新时间|

项目: id | projectname | projectnamenospace | projectdescription |创建于|更新于|

我的模型:

任务:


假设在
dashboard.blade.php
文件中。您正在传递多个项目,每个项目都有许多任务,因此必须运行两个循环

@foreach($projects as $key=>$project)
    @foreach($project->task as $taskRow)
        {{$taskRow->taskname}}
    @endforeach
@endforeach
项目模式的变化

public function task(){
    return $this->hasMany(Task::class);
}

{{$projects->task->taskname}}
尝试单个
{{$project->task->taskname}}
我尝试运行它,它告诉我类App\App未找到,是的,我正在尝试输出每个项目及其所有任务,很抱歉没有告诉您:)在项目模型中,将App::class替换为Task::class或任务表中的内容…我更新了我的答案。我没有注意到我写了App:class,它现在似乎可以工作了。干杯,伙计!:D
<?php

namespace App\Http\Controllers;

use App\Project;
use Illuminate\Support\Facades\Auth;
use Illuminate\Support\Facades\DB;
use Illuminate\Http\Request;

class DashboardController extends Controller
{
    public function index(Project $project)
    {
        $ldate = date('Y-m-d H:i:s');

        $projects = Project::all();

        $username = Auth::user()->name;
        return view('dashboard', ['user' => $username, 'ldate' => $ldate, 'projects' => $projects]);
    }
}
@foreach($projects as $key=>$project)
    @foreach($project->task as $taskRow)
        {{$taskRow->taskname}}
    @endforeach
@endforeach
public function task(){
    return $this->hasMany(Task::class);
}