dongse5408 2018-11-08 14:29
浏览 33

显示来自3个表Laravel的数据

I am trying display data from 3 tables like this ->

course name | test name | question count


course name1 | test name1 | 3

I have relation between Test and Question 1:N

Test.php

public $table = 'Test';

protected $fillable = [
    'name',
];

public function question()
{
    return $this->hasMany('App\Question');
}

Question.php

public $table = 'Question';

public function test()
{
   return $this->belongsTo('App\Test');
}

TestController.php

public function courses(Subject $subject) {
    $subject_with_courses = Subject::with(['course'])->where('id', 

    $subject['id'])->first();

    $courses = Course::with(['test'])->get();
    $questions = $courses->question;

    return view('admin.test.list_course', [
        'courses' => $courses,
        'questions' => $questions,
        'subject' => $subject
    ]);
}

list_course.php

@foreach($courses as $course)
    <tr>
        <td>
            {{ $course->name }}
        </td>
        <td>
            @foreach($course->test as $test)
                {{ $test->name }}
            @endforeach
        </td>
        <td>
            @foreach($course->questions as $test)
                {{ $test->count() }}
            @endforeach
        </td>
    </tr>
@endforeach

I get error "Property [question] does not exist on this collection instance."

Can anybody help me with this, please ? Thank you!!

  • 写回答

3条回答 默认 最新

  • drqj8605 2018-11-08 14:48
    关注

    This is what is giving you the error:

    TestController.php:

    $courses = Course::with(['test'])->get();
    $questions = $courses->question; // <---- $courses is a Collection not a Model
    

    You are trying to access the questions property of the Model, but $courses is a Collection of Models.

    评论

报告相同问题?

悬赏问题

  • ¥15 drone 推送镜像时候 purge: true 推送完毕后没有删除对应的镜像,手动拷贝到服务器执行结果正确在样才能让指令自动执行成功删除对应镜像,如何解决?
  • ¥15 求daily translation(DT)偏差订正方法的代码
  • ¥15 js调用html页面需要隐藏某个按钮
  • ¥15 ads仿真结果在圆图上是怎么读数的
  • ¥20 Cotex M3的调试和程序执行方式是什么样的?
  • ¥20 java项目连接sqlserver时报ssl相关错误
  • ¥15 一道python难题3
  • ¥15 牛顿斯科特系数表表示
  • ¥15 arduino 步进电机
  • ¥20 程序进入HardFault_Handler