Мне нужно реализовать разрешения на уровне поля в модели страницы на веб-сайте SilverStripe 3.2.
Давайте представим, что у меня есть модель ArticlePage.php
.У него есть обычные поля, такие как $MenuTitle
и $Content
, и я добавил другие свойства, такие как $Subtitle
и $Author
.
. Я могу защитить всю модель, используя providePermissions()
и связанные с нейcanEdit()
методов, но мне нужно защитить отдельные поля / свойства страницы.
Что мне нужно сделать, это:
Возможно ли это в SilverStripe 3.2?Есть ли SilverStripe способ сделать это?
Если нет, есть ли способ, которым я могу определить группу пользователей текущего пользователя и затем, возможно, условно показать код $field->addFieldToTab()
?Можно ли остановить сохранение пользователем поля путем злонамеренной публикации данных, возможно, путем добавления отсутствующих полей через инспектор?
Заранее спасибо.