Как мы интерпретируем друпалский URL? - PullRequest
1 голос
/ 29 октября 2011

Я новичок в drupal и ранее использовал фреймворки CakePHP и Codeigniter.Оба они основаны на MVC, я не уверен на 100%, если Drupal 6 основан на MVC, хотя и имеет отдельные уровни кода.Таким образом, в codeigniter URL, такой как / users / show / 1, будет интерпретирован так, как это было бы в классе «users», а метод «show», а id пользователя будет «1».Можем ли мы интерпретировать URL-адрес drupal таким образом?

Также я знаю, что drupal использует хороший псевдоним пути, так что это сильно повлияет ??Так что, если у нас есть URL, который говорит домен / admin / xyz? U = 1 (пример URL), где в модуле администратора я могу найти это ??

1 Ответ

2 голосов
/ 29 октября 2011

Короткий ответ - нет, вы не можете интерпретировать URL Drupal так, как вы предлагаете.Drupal не является MVC, и URL не соответствуют ни одному из таких шаблонов.Любой модуль может определить любой путь, который он хочет для своих страниц, и эти пути снова могут быть переопределены с помощью alises (как вы предлагаете в своем вопросе).

В Drupal 6 очень и очень мало ООП, и это не обязательноЯ не могу думать ни о каких основных модулях, которые бы объявляли какие-либо классы (не говоря уже о том, чтобы объявлять их, используя соглашения стилей MVC).Это немного изменилось в Drupal 7, но он по-прежнему не использует подход MVC.

Боюсь, вы будете вынуждены искать реализации hook_menu() базовых модулей, чтобы увидеть, что page callbackФункция используется для определенного пути.И даже тогда, если у вас включены псевдонимы, вы, вероятно, не найдете его.

В качестве небольшого совета, путь к маршрутизатору («истинный» путь) страницы Drupal всегда можно найти в $_GET['q'].

...