Динамическое добавление текста в View в Umbraco CMS Project - PullRequest
0 голосов
/ 19 ноября 2018

Я создал плагин, который добавляет пользовательский раздел и панель инструментов (.ascx file) с текстовым полем и кнопкой.

Установка и удаление плагина работает нормально.

Но мне нужно, чтобы скрипт был добавлен к каждому представлению в проекте при нажатии кнопки.

1 Ответ

0 голосов
/ 27 ноября 2018

Мне было бы интересно узнать, что вы пытаетесь сделать здесь - я не понимаю, почему вы хотите добавить что-то к каждому файлу просмотра на сайте.

Однако, чтобы ответить на ваш вопрос.Вам нужно создать контроллер backoffice.Этот контроллер должен иметь действие, которое перечисляет папку ~/views/ на диске и просто добавляет ваш сценарий в каждый файл, в который он должен быть добавлен.Затем вы подключаете свою кнопку, чтобы выполнить ajax-запрос к этому действию контроллера, и все должно быть хорошо.

Примечание: вам действительно нужно быть уверенным, что это контроллер backoffice, поэтому он обеспечивает аутентификацию и не может бытьвызывается по любому неаутентифицированному запросу.Вы не хотите рисковать тем, что кто-то просто бьет по этому контроллеру извне - должны быть разрешены только известные пользователи backoffice, прошедшие проверку подлинности в backoffice.

Также обратите внимание, что вы должны проверять это всякий раз, когда собираетесь добавить этоСкрипт для просмотра файлов - необходимо убедиться, что он еще не добавлен в файлы.В противном случае ваш скрипт будет добавлен несколько раз, если кто-то дважды нажмет кнопку.

Здесь есть документация о том, как добавить автоматически маршрутизируемые контроллеры с аутентификацией backoffice: https://our.umbraco.com/documentation/reference/routing/webapi/

...