Laravel属于混乱

问题描述

我在EVENT和MAJOR模型之间有一个OnetoMany关系,如下所示:

EVENT属于Major和Major HasMany事件

这是我在MysqL中的表格

EVENTS Table :

   id   name          major_id  
    1   liga 1st          1     
    2   liga 2nd          2     

Majors Table :

id  symbol                 name     
1   MTB           xxxxxxxxxxxxxxxxxxxxxxxx  
2   ROAD          yyyyyyyyyyyyyyyyyyyyyyyy  
3   TRACK         zzzzzzzzzzzzzzzzzzzzzzzz

在控制器中,我将所有事件的数据传递给视图,如下所示:

 $events= Event::all();

在我看来,我无法根据关联性找到专业表:

   @foreach($events as $event)
     <option value="">{{$event->major->name }}</option>
    @endforeach

但是我尝试使用此代码,它可以工作:

   @foreach($data as $event)
    <option value="">{{$event->major()->first()->name }}</option>
   @endforeach

我的问题是,每个事件是否都有一个Major_id,为什么我不应该利用上面提到的第一个查询呢?

解决方法

我在控制器中再次尝试

$data = Event::find(1);
return $data->major;

我获取了一个事件,但无法访问其主要对象!!! 返回Null 糊涂了!

,

24小时后,我终于发现了嘲笑的问题!

我在模型中分配了一个 getMajorAttribute (),它正在处理输出数据!谢谢

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...