Laravel显示由创建,并使用各自的ID按名称编辑
我有一辆台式车。此表包含由编辑人创建的字段。每次创建或编辑车辆时,该特定用户的ID都会保存在此列中。 在显示此表详细信息的show视图中,我想显示用户名而不是ID。我在这里遗漏了什么或做错了什么 与用户关联的车型: 显示数据的控制器: 看法 使用hasmany,我可以按名称显示创建的或编辑的。如何显示创建人和编辑人的姓名?由于您只有用户的id,因此必须从数据库中获取用户的姓名。 在您的模型中,您可以添加访问器来实现这一点Laravel显示由创建,并使用各自的ID按名称编辑,laravel,Laravel,我有一辆台式车。此表包含由编辑人创建的字段。每次创建或编辑车辆时,该特定用户的ID都会保存在此列中。 在显示此表详细信息的show视图中,我想显示用户名而不是ID。我在这里遗漏了什么或做错了什么 与用户关联的车型: 显示数据的控制器: 看法 使用hasmany,我可以按名称显示创建的或编辑的。如何显示创建人和编辑人的姓名?由于您只有用户的id,因此必须从数据库中获取用户的姓名。 在您的模型中,您可以添加访问器来实现这一点 class Vehicle extends Model { //
class Vehicle extends Model
{
// rest of the code
public function getCreatedByNameAttribute()
{
return User::where('id', $this->created_by)->pluck('name')->first();
}
}
您可以按如下方式访问“按用户名创建的”
<tr>
<th>Created By</th>
<td>{{$vehicle->created_by_name}}</td>
</tr>
然后,您可以按如下方式访问它
<tr>
<th>Created By</th>
<td>{{$vehicle->creator->name}}</td>
</tr>
由于您只有用户的id,因此必须从数据库中获取用户的名称。
在您的模型中,您可以添加访问器来实现这一点
class Vehicle extends Model
{
// rest of the code
public function getCreatedByNameAttribute()
{
return User::where('id', $this->created_by)->pluck('name')->first();
}
}
您可以按如下方式访问“按用户名创建的”
<tr>
<th>Created By</th>
<td>{{$vehicle->created_by_name}}</td>
</tr>
然后,您可以按如下方式访问它
<tr>
<th>Created By</th>
<td>{{$vehicle->creator->name}}</td>
</tr>
车辆模型上的当前关系与编辑器匹配。为了为创建者实现同样的效果,您可以创建另一个与用户模型的关系,并将created_by列传递给它
在您的视图中,您可以使用$vehicle->creator->name或$vehicle->editor->name来显示名称您在车辆模型上的当前关系与编辑器匹配。为了为创建者实现同样的效果,您可以创建另一个与用户模型的关系,并将created_by列传递给它
在您的视图中,您可以使用$vehicle->creator->name或$vehicle->editor->name来显示名称谢谢您的选择。然而,我希望利用一对多/多对多的关系,而不是使用查询直接从数据库中获取它。可以在我的控制器中直接使用-$created\u by=User::find$customer->created\u by->name从数据库中获取名称;和$edited_by=User::find$customer->edited_by->name;谢谢你的选择。然而,我希望利用一对多/多对多的关系,而不是使用查询直接从数据库中获取它。可以在我的控制器中直接使用-$created\u by=User::find$customer->created\u by->name从数据库中获取名称;和$edited_by=User::find$customer->edited_by->name;
class Vehicle extends Model
{
// rest of the code
public function creator()
{
return $this->belongsTo(User::class, 'created_at', 'id');
}
}
<tr>
<th>Created By</th>
<td>{{$vehicle->creator->name}}</td>
</tr>
class Vehicle extends Model
{
public function customer(){
return $this->belongsTo('App\Customer','customer_id');
}
public function creator(){
return $this->belongsTo('App\User','created_by');
}
public function editor(){
return $this->belongsTo('App\User','edited_by');
}
}