How to see table fields from foreign keys in Laravel(如何在 Laravel 中从外键中查看表字段)
问题描述
我是 Laravel 的新手,语法不好.我想通过外键(该表的id)查看另一个表的值.
I'm new at Laravel and not good with syntax. I want to see the values of another table through the foreign key(id of that table).
https://ibb.co/pXRFRHn 您可以在这张图片中看到我在用户 & 下获得了 id;班级.我想要与这些 ID 关联的标题.
https://ibb.co/pXRFRHn You can see in this picture I get ids under user & class. I want the titles associated with these ids.
我有表格部分、用户和课程.我使用 class_id
&user_id 作为节表中的外键.当我尝试显示数据时,我看到了 id,但我想要名称 &从该 id 中提取的其他字段.
I have tables sections,users and a class. I use class_id
& user_id as the foreign key in the section table. When I try to show data, I see the id, but I want the name & other fields extracted from that id.
控制器
public function index()
{
$sections = Section::all();
$classs = Classs::all();
$users = User::all();
return view('sections.index')->with('sections', $sections)->with('classs', $classs)->with('users', $users);
}
刀片/视图
<div class="box">
<div class="box-header">
<h3 class="box-title">All Sections</h3>
</div>
<div class="box-body">
<table class="table table-responsive">
<thead>
<tr>
<th>Name</th>
<th>Class</th>
<th>User</th>
<th>Modify</th>
</tr>
</thead>
<tbody>
@foreach($sections as $cat)
<tr>
<td>{{$cat->title}}</td>
<td>{{$cat->class_id}}</td>
<td>{{$cat->user_id}}</td>
<td>
<button class="btn btn-info" data-mytitle="{{$cat->title}}"
data-myclassid="{{$cat->class_id}}" data-myuserid="{{$cat->user_id}}"
data-catid={{$cat->id}} data-toggle="modal" data-target="#edit">Edit
</button>
<button class="btn btn-danger" data-catid={{$cat->id}} data-toggle="modal"
data-target="#delete">Delete
</button>
</td>
</tr>
@endforeach
</tbody>
</table>
</div>
</div>
具体...
<td>{{$cat->class_id}}</td>
由此,我得到了类 id,但我也想要它的名字.
From this, I get the class id, but I want its name also.
{{$cat->(class_id)->name}}"
但是,它不起作用.
我已经编辑了模型
class Classs extends Model
{
//
protected $fillable = [
'id',
'title',
];
public function section()
{
return $this->belongsTo('AppSection');
}
}
截面模型
class Section extends Model
{
//
protected $fillable = [
'id',
'title',
'class_id',
'user_id',
];
public function classs()
{
return $this->hasMany('AppClasss');
}
}
推荐答案
你要做的就是
data-myclassid="{{$cat->class_id}}"
不如试试这个
data-myclassid="{{ IlluminateSupportFacadesDB::table('class')->where('id',$cat->class_id)->value('name')}}"
我假设您的表名是类,因为您想显示类名,因此在该数据库中的类名(列名)将是简单的 'name' ,这就是为什么我将 name 放在 value 字段中......
I am assuming that your table name is class as you want to show class name so in that database class name (column name) would be simple 'name' , that why I put name in value field....
这篇关于如何在 Laravel 中从外键中查看表字段的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:如何在 Laravel 中从外键中查看表字段
基础教程推荐
- 在多维数组中查找最大值 2021-01-01
- Libpuzzle 索引数百万张图片? 2022-01-01
- 如何在 PHP 中的请求之间持久化对象 2022-01-01
- 通过 PHP SoapClient 请求发送原始 XML 2021-01-01
- 在 Woocommerce 中根据运输方式和付款方式添加费用 2021-01-01
- mysqli_insert_id 是否有可能在高流量应用程序中返回 2021-01-01
- 超薄框架REST服务两次获得输出 2022-01-01
- XAMPP 服务器不加载 CSS 文件 2022-01-01
- 在 PHP 中强制下载文件 - 在 Joomla 框架内 2022-01-01
- WooCommerce 中选定产品类别的自定义产品价格后缀 2021-01-01