php - 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 或类似的东西,有什么想法吗?
解决方案
推荐阅读
- javascript - 仅使用 Videojs-record 录制音频而不使用 wavesurfer
- node.js - 电子 getFocusedWindow().close() 不工作
- c - 段错误读取/更改全局变量
- apache-flink - 计数 Flink 定时器对象总数
- python - 熊猫搞砸了多级索引镶木地板浮动精度
- reactjs - 打字稿在分配给 Partial 类型时没有发现错误
- c++ - 在抛出“std::length_error”的实例后,我收到一个错误终止调用
- php - Laravel 8 Livewire 2 - 将图像上传到 Cloudinary 在本地工作而不是在 Heroku 上
- java - 我需要我的代码来显示用户名、他们的 GPA,然后是他们的 GPA 乘以 10 的学分,并且需要程序来打印报表
- python - 在 Mac 上的 jupyter 上安装 pandas-profiling 时出现问题