php - SilverStripe 4 - DataExtension 自动发布版本化文件错误
问题描述
如该解决方案所述,建议的解决方法在SS 环境中dev
运行良好。test
建议的方法是避免当前与通过DataObject
$owns
属性管理的自动发布文件相关的错误。
但是由于我在生产环境中上传了我的项目 - 在live
env 上 - 解决方法不再起作用。
就我而言,我正在研究一个DataExtension
模型User
。其余的实现完全遵循上面提到的情况——使用UploadField
. 在生产中,似乎片段在其条件下被忽略了。特别是,这是我的版本:
用户扩展
// AllegatiDownload: many_many File type uploaded with UploadField
public function onAfterWrite()
{
if ($this->owner->AllegatiDownloadID) { // <- This is being ignored in live version
$this->owner->AllegatiDownload()->publishSingle();
}
parent::onAfterWrite();
}
如果我尝试更换
$this->owner->AllegatiDownloadID
和
$this->owner->AllegatiDownload()
条件通过,但$this->owner->AllegatiDownload()->publishSingle()
返回未跟踪的 500 异常。只是:
出现错误
而且,正如我所说,这只发生在生产中。
提前感谢您的支持。
解决方案
今天我刷新了项目数据库,以便升级与之交互的自定义前端组件。似乎在那次冲洗之后,问题得到解决。这很奇怪,因为我/dev/build?flush=all
之前尝试过很多次,但什么也没发生。服务器缓存可能吗?我不知道。但现在解决方法按预期工作。
无论如何感谢您的支持。
推荐阅读
- objective-c - 在守护程序应用程序中监听网络开/关状态 - Cocoa
- azure-active-directory - Azure AD 条件策略问题
- machine-learning - 使用 CNN conv1d 模型时的维度错误
- popup - 阻止阅读 Eigen 文档网页的弹出窗口
- android - Android Studio:我的消息未显示在我的 android 应用程序上
- angular - 如何在 Angular 中将数据传递给 viewContainerRef 组件?
- pandas - 如何根据DATAFRAME中的数字设置x轴
- node.js - 容器中的节点红色插件:节点丢失
- java - 使用休眠的 Spirng Boot CRUD 操作
- swiftui - 如何使用动态视图名称创建 SwiftUI 导航链接列表