Это вопросы, которые вы должны учитывать при реализации переименования.
• Разработка интерфейса переименования, например, где разместить форму и
кнопку отправки и кому разрешить ее использовать. Эта проблема связана с
принята политика таких изменений.
• Проверка нового формата имени. Переименование должно производить действительную страницу
связь.
АДМИНИСТРИРОВАНИЕ БАЗЫ ДАННЫХ
291
• Предотвращение конфликтов с существующими именами страниц. Есть вдобавок
менее очевидное противоречие, что новое имя могло бы соответствовать
существующая висячая ссылка, активирующая ложную ссылку, предназначенную для
что-то другое.
• Обновление ссылок на других страницах базы данных. В многопользовательском
среды, это обновление должно гарантировать, что редактирующий пользователь не
перезаписать обновленную страницу отредактированной копией, которая по-прежнему сохраняет старую
шаблон ссылки или, если уж на то пошло, что пользователь не сохраняет отредактированный
версия переименованной страницы с оригинальным, теперь потерянным названием.
• Решите, хотите ли вы оставить старые ссылки висящими. Впоследствии
следующие устаревшие ссылки могут указать пользователю, что имя
было внесено изменение и предлагают изменить ссылки на ссылающейся странице.
Есть веские причины серьезно подумать над этим последним вопросом и перейти к дополнительному кодированию.
усилия по обеспечению предлагаемой функциональности.
Самый простой подход — использовать поиск по обратным ссылкам. Скопируйте соответствующий код
для этого в подпрограмму переименования. Используйте версию поиска для всех вхождений и
просто измените соответствующее выражение на подстановочное. Добавить новый поиск
сформируйте шаблон под названием «переименовать» и решите, как его вызывать. Новое имя может быть просто
другое слово, извлеченное из входного шаблона поиска: «OldName NewPageName».
Добавьте несколько проверок работоспособности, возможно, разрешений. Если все в порядке, переименуйте
цель. Затем выполните поиск и замену, пересохранив любую измененную страницу.
Однако, поскольку ссылки на вики-страницы формируются из текста в определенном контексте,
слепое переименование всех совпадающих шаблонов иногда может разрушить локальный контекст. Как
например, рассмотрим случай со следующим текстом, включающим ссылку на страницу
кто-то позже решает переименовать:
... Действие RenameWikiPaqe является спорным ...