Laravel - 显示名称而不是 id
Laravel - display name instead of id
需要帮助,如何显示驱动程序名称而不是 ID?我有更多 tables 但如果有人能帮我一个我会更高兴,table 告诉我 ID 1、2、3 的编号......我试过了要更改模型,我正在学习 php 和 lavarel,这部分对我来说仍然不是很清楚。感谢您的帮助
注册模型;
class register extends Model
{
use SoftDeletes;
use HasFactory;
public $table = 'registers';
protected $dates = ['deleted_at'];
public $fillable = [
'driver_id',
'inOut',
'plates',
'carrier_id',
'tractorNumber',
'process_id',
'location_id',
'customer',
'drayage_id',
'containertype_id',
'containerstatus_id',
'containerPlate',
'containerNumber',
'comments'
];
/**
* The attributes that should be casted to native types.
*
* @var array
*/
protected $casts = [
'id' => 'integer',
'driver_id' => 'integer',
'inOut' => 'string',
'plates' => 'string',
'carrier_id' => 'integer',
'tractorNumber' => 'string',
'process_id' => 'integer',
'location_id' => 'integer',
'customer' => 'string',
'drayage_id' => 'integer',
'containertype_id' => 'integer',
'containerstatus_id' => 'integer',
'containerPlate' => 'string',
'containerNumber' => 'string',
'comments' => 'string'
];
/**
* Validation rules
*
* @var array
*/
public static $rules = [
'driver_id' => 'required',
'inOut' => 'required',
'carrier_id' => 'required',
'process_id' => 'required',
'location_id' => 'required',
'drayage_id' => 'required',
'containertype_id' => 'required',
'containerstatus_id' => 'required'
];
}
车手型号
class driver extends Model
{
use SoftDeletes;
use HasFactory;
public $table = 'drivers';
protected $dates = ['deleted_at'];
public $fillable = [
'driverName',
'licence'
];
/**
* The attributes that should be casted to native types.
*
* @var array
*/
protected $casts = [
'id' => 'integer',
'driverName' => 'string',
'licence' => 'string'
];
/**
* Validation rules
*
* @var array
*/
public static $rules = [
'driverName' => 'required',
'licence' => 'required'
];
}
@foreach($registers as $register)
<tr>
<td>{{ $register->driver_id }}</td>
<td>{{ $register->inOut }}</td>
<td>{{ $register->plates }}</td>
<td>{{ $register->carrier_id }}</td>
<td>{{ $register->tractorNumber }}</td>
如果驱动和寄存器模型之间有关系,你可以在寄存器模型中写那个关系class。
public function driver()
{
return $this->belongsTo(driver::class, 'driver_id');
}
然后你可以输入驱动名称,
@foreach($registers as $register)
<tr>
<td>{{ $register->driver->driverName}}</td>
<td>{{ $register->inOut }}</td>
<td>{{ $register->plates }}</td>
<td>{{ $register->carrier_id }}</td>
<td>{{ $register->tractorNumber }}</td>
</tr>
@endforeach()
需要帮助,如何显示驱动程序名称而不是 ID?我有更多 tables 但如果有人能帮我一个我会更高兴,table 告诉我 ID 1、2、3 的编号......我试过了要更改模型,我正在学习 php 和 lavarel,这部分对我来说仍然不是很清楚。感谢您的帮助
注册模型;
class register extends Model
{
use SoftDeletes;
use HasFactory;
public $table = 'registers';
protected $dates = ['deleted_at'];
public $fillable = [
'driver_id',
'inOut',
'plates',
'carrier_id',
'tractorNumber',
'process_id',
'location_id',
'customer',
'drayage_id',
'containertype_id',
'containerstatus_id',
'containerPlate',
'containerNumber',
'comments'
];
/**
* The attributes that should be casted to native types.
*
* @var array
*/
protected $casts = [
'id' => 'integer',
'driver_id' => 'integer',
'inOut' => 'string',
'plates' => 'string',
'carrier_id' => 'integer',
'tractorNumber' => 'string',
'process_id' => 'integer',
'location_id' => 'integer',
'customer' => 'string',
'drayage_id' => 'integer',
'containertype_id' => 'integer',
'containerstatus_id' => 'integer',
'containerPlate' => 'string',
'containerNumber' => 'string',
'comments' => 'string'
];
/**
* Validation rules
*
* @var array
*/
public static $rules = [
'driver_id' => 'required',
'inOut' => 'required',
'carrier_id' => 'required',
'process_id' => 'required',
'location_id' => 'required',
'drayage_id' => 'required',
'containertype_id' => 'required',
'containerstatus_id' => 'required'
];
}
车手型号
class driver extends Model
{
use SoftDeletes;
use HasFactory;
public $table = 'drivers';
protected $dates = ['deleted_at'];
public $fillable = [
'driverName',
'licence'
];
/**
* The attributes that should be casted to native types.
*
* @var array
*/
protected $casts = [
'id' => 'integer',
'driverName' => 'string',
'licence' => 'string'
];
/**
* Validation rules
*
* @var array
*/
public static $rules = [
'driverName' => 'required',
'licence' => 'required'
];
}
@foreach($registers as $register)
<tr>
<td>{{ $register->driver_id }}</td>
<td>{{ $register->inOut }}</td>
<td>{{ $register->plates }}</td>
<td>{{ $register->carrier_id }}</td>
<td>{{ $register->tractorNumber }}</td>
如果驱动和寄存器模型之间有关系,你可以在寄存器模型中写那个关系class。
public function driver()
{
return $this->belongsTo(driver::class, 'driver_id');
}
然后你可以输入驱动名称,
@foreach($registers as $register)
<tr>
<td>{{ $register->driver->driverName}}</td>
<td>{{ $register->inOut }}</td>
<td>{{ $register->plates }}</td>
<td>{{ $register->carrier_id }}</td>
<td>{{ $register->tractorNumber }}</td>
</tr>
@endforeach()