В пути вы положили бы
GET /{<[a-z]+>fanPage}/? Page.showFanPage
С этим вы можете получить:
http://localhost:9000/facebook
Я также рекомендую использовать метод slugify
, предоставляемый платформой воспроизведения, как правило, вы оба проверите, существует ли пула в дате спускать, и посмотреть на слизняка, чтобы захватить данные (название Fanpage /, который является владельцем страницы вентилятора/сколько просмотров/и т.д. и т.п.)
В таблицах:
Имя: Fanpage
PageId целое или BIGINT
название VARCHAR
пробкового VARCHAR уникальный
владелец целое
содержание текста
В коде:
public static void showFanPage(String fanPage) {
// use models to look for the slug
// grab the data
// do what you need to do
}
Я собираюсь на примерах здесь о том, как создать URLs, так как я не знаю, что приложение, которое вы строите:
GET /post/slug/? Page.createPage
POST /post/slug/? Page.processPage
public static void createPage() {
// remember to create the template
render();
}
public static void processPage(String slugName) {
// slugName refers to the input field
// check if the slug exists and throw error if it does
// process
}
(обратите внимание, это просто пример, я не знаю, какое приложение вы создаете) Надеюсь, это поможет, сообщите мне, если это то, что вы имели в виду.
Я бы хотел, чтобы пользователи создавали пользовательские URL-адреса, чтобы указать их профиль, например. 'HTTP: // www.example.com/allenskd'. 'allenskd' будет уникальным для каждого пользователя и будет использоваться для извлечения их профиля пользователя. Из документов 'sluggify' не будет работать с его _purely_ для ** [SEO] (http://stackoverflow.com/questions/4433620/play-framework-how-do-lookup-an-item-from- a-slugify-url) ** Решение для регулярного выражения работает, но теперь нужно проверять URL-адреса, такие как URL-адреса диспетчера, такие как '/ admin /' – n002213f
. Это обычная проблема в рамках со времени Play! ударит мгновенное совпадение и загрузит маршрут, не учитывая других соперников, обычно я избегаю этой проблемы, просто организуя маршруты по приоритету (сначала маршруты администратора и т. д.), это недостаток, который я видел с помощью Play !, я не знаю, будут ли они когда-либо исправляйте это также, как маршрутизатор управляет маршрутами, и да, все четкие URL-адреса (симпатичные URL-адреса, но вы его называете) предназначены исключительно для SEO, он работает, если пользователь хочет получить креатив (но это зависит от вашего приложения) – allenskd
в файле 'routes',' Этот файл определяет все маршруты приложений (сначала маршруты с более высоким приоритетом) ', помещая маршрут внизу, решает проблему в приведенном выше комментарии. – n002213f