如何解决Magento 2 添加扩展属性到 Magento\Sales\Api\Data\ShipmentTrackInterface
我正在尝试使用扩展属性向跟踪添加自定义跟踪 URL,我在 extension_attributes.xml
<extension_attributes for="Magento\Sales\Api\Data\ShipmentTrackInterface">
<attribute code="track_url" type="string"/>
</extension_attributes>
<extension_attributes for="Magento\Sales\Api\Data\ShipmentTrackCreationInterface">
<attribute code="track_url" type="string"/>
</extension_attributes>
清除生成的代码和缓存,接口正确填充,我使用\Magento\Sales\Api\ShipOrderInterface::execute
保存发货:
$this->shipOrderService->execute(
$order->getId(),$items,$data->isCustomerNotify(),false,$comment,[$data->getTracking()]
);
$data->getTracking()
的数据如下所示:
{
"track_number": "1Z37X3X41217934386","title": "ups","carrier_code": "ups","extension_attributes": {
"track_url": "blah"
}
}
所以一切看起来都很好,扩展属性数据被很好地传递到 Magento\Framework\Model\AbstractExtensibleModel
,但是在 Magento\Framework\Api\AbstractSimpleObject
中,Magento\Sales\Api\Data\ShipmentTrackExtension
是从它扩展的,$data
变成了一个空数组,我仍然无法弄清楚为什么会发生这种情况,我处于开发模式,不需要运行 DI 或类似的东西,有什么想法吗?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。