我是Laravel的新手。请引导我。
端口是一个模型,坐标是一个无数据库模型。端口模型中有2个浮动(lat and long
(。从数据库加载端口时,2个浮点值将转换为Coordinates对象。
我的第一个问题是,如何创建一个具有两个属性的非数据库模型?
我的第二个问题是,如何在带有坐标的端口模型对象中制作一个cast 2 float?
这是我的代码坐标模型无数据库模型有两个属性
class Coordinates extends Model
{
//Add attribute
protected $attributes = ['latitude', 'longitude'];
}
这是带有的端口型号
class Port extends ContractsAppModel
{
protected $coordinates = Coordinates::class;
protected $fillable=[
'un_latitude',
'un_longitude',
];
function __construct(array $attributes = array())
{
$this->coordinates = Coordinates::class;
$this->coordinates->latitude = $attributes["un_latitude"];
$this->coordinates->longitude = $attributes["un_longitude"];
}
}
据我所知,每个Eloquent模型都应该链接到数据库中的一个表。相反,只需在迁移中添加latitude
和longitude
作为列即可创建port
表。