Silverstripe 4 получить черновики файлов в запросе - PullRequest
0 голосов
/ 11 октября 2019

Я очень новичок в Сильверстрипе. Я хочу, чтобы черновые файлы были видны зарегистрированным пользователям.

Когда я выполняю запрос типа

File::get()->Where($query) 

, я получаю только опубликованные файлы.

Как получить всефайлы для авторизованного пользователя с правами на просмотр файла?

Спасибо за ваш ответ

Ответы [ 2 ]

0 голосов
/ 21 октября 2019

Спасибо Aaryn,

это прекрасно работает с файлами, но я не могу заставить его работать с отношением many_many, сохраненным в DataObject. при итерации объекта data поле many_many всегда равно NULL. в этом поле я сохранил загруженные, неопубликованные файлы.

foreach ($ sitzungen as $ item) {if ($ item-> MDateien ()! = NULL) {...} ...}

$ sitzungen - это объект DataObject. MDateien - это поле many_many.

Спасибо за ваш ответ

0 голосов
/ 15 октября 2019

Никогда не пробовал это с файлами, но вы можете попробовать запросить их через Versioned::get_by_stage()

$draftFiles = Versioned::get_by_stage('File', Versioned::DRAFT)->where($query);
$liveFiles = Versioned::get_by_stage('File', Versioned::LIVE)->where($query);

См. здесь для более подробной информации.

...