【发布时间】:2018-10-10 09:52:08
【问题描述】:
注意:在我的视图之前,我有另一个视图显示表动物和类的所有动物和类。在该视图中,我有一个按钮,当我单击特定记录时会显示更具体的细节。
这是重定向到我的视图的按钮。我们将此视图称为动物详细信息视图。
动物详情视图。
我认为有一个条件是假设比较 2 个表之间的 2 个字段的值。表格 Animals 和表格 Classes。
这是条件。
<!--TABLE ANIMALS DETAILS IN MY VIEW-->
<!--THEAD-->
<tbody>
<tr>
<td>{{$animal->id}}</td>
<td>{{$animal->name}}</td>
<td>{{$animal->area}}</td>
@if($animal->animal_class_id == $class->id)
<td>{{$class->name}}</td>
@endif
</tr>
</tbody>
我尝试比较 animal_class_id(表 Animals) 和 id(表 Classes) 之间的值,然后显示相应的名称类的。
但 它不起作用, 它比较 id (动物表) 和 @987654325 @ (也属于动物表)。
为什么我的情况不比较我尝试比较的字段?
另外我会把我的控制器,函数show()
public function show($id){
$animal = AnimalNew::find($id);
$class = AnimalClass::find($id);
$habitat = Habitat::all();
return view('animals.ShowAnimalsDetails', compact('animal', 'class', 'habitat'));
}
也许我可以在函数 show() 中做一个条件,在那里我可以比较字段之间的值:animal_class_id 来自表格动物,以及 id 来自表类。
例如,我有这样的记录:
餐桌动物
id|name | animal_class_id
1 |Lion | 1
2 |Tiger | 1
3 |Salamander | 2
4 |Sparrow | 3
5 |Ant | 4
AND THE TABLE 类
id| name
1 | Mammals
2 | Amphibians
3 | Birds
4 | Insects
它仅适用于第一条记录,其中 2 个 id 分别具有相同的值。在这种情况下,Lion 的 id = 1 和 animal_class_id = 1。
但正如我之前所说,我想比较 table Animals 的字段 animal_class_id 和 id 字段之间的值> table Classes,而不是同一个 table 的 id 和 animal_class_id。
【问题讨论】:
-
为什么不直接使用关系,而是可以遍历它呢?
-
@aynber 对不起,我听不懂你的意思