SilverStripe 4 - Ошибка автоматической публикации версионных файлов в DataExtension - PullRequest
0 голосов
/ 19 октября 2018

Как указано в этом решении , предложенный обходной путь очень хорошо работает в средах dev и test SS.Рекомендуется избегать текущей ошибки, связанной с авто-публикацией файлов, управляемой через свойство DataObject $owns.

Но так как я загрузил свой проект в производство - на live env - обходной путь не делаетбольше не работает.

В моем случае я работаю на DataExtension модели User.Остальная часть реализации в точности следует вышеупомянутому случаю - с UploadField.В производстве, кажется, что фрагмент игнорируется в своем состоянии.В частности, это моя версия:

UserExtension

// 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 исключений.Просто:

Произошла ошибка

И, как я уже сказал, это происходит только в производстве.

Заранее спасибо за поддержку.

1 Ответ

0 голосов
/ 24 октября 2018

Сегодня я сбросил базу данных проекта, чтобы обновить пользовательский интерфейсный компонент, который взаимодействует с ним.Кажется, что после этого сброса вопрос решается.Это довольно странно, потому что я пробовал много /dev/build?flush=all раньше, и ничего не произошло.Кеш сервера может быть?Я не знаю.Но теперь обходной путь работает, как и ожидалось.

В любом случае, спасибо за поддержку.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...