我有一个模型Entry
,它与模型Product
有多对多的关系。此关系具有带有entry_product
属性的数据透视表(valid_to
)。
对于数据库,此valid_to
属性是时间戳,这没关系。但我希望在将其作为JSON响应接收之前对其进行格式化。
负责这种关系的功能如下:
public function products() {
return $this->belongsToMany('Product', 'entry_products')->withPivot(['quantity', 'price', 'valid_to']);
}
我是否必须创建新模型才能支持此操作?在将其作为JSON响应发送之前,有没有办法格式化所有这些日期而不循环获取的数据?
答案 0 :(得分:-1)
您应该使用模型演示者。模型演示者以我们指定的所需格式显示模型数据。
我建议您使用laravel-auto-presenter。文档是不言自明的。请通过它,如果你遇到任何困难,请在这里发布。
幸运的是,文档中给出的示例使用时间戳。
如果您想直接发送回复,可以使用Laravel5-json包。
您可以覆盖toJson
方法以根据需要返回模型。它更多地独立于外部包装和清洁剂。