2013-11-29 2 views
2

У меня есть небольшой веб-сайт в grails, который имеет две страницы. Сначала стартовая и вторая страница - это страницы с подробными сведениями. URL для этих страниц: http://somecomp.com/start и http://somecomp.com/details.Ограничить конкретную страницу в grails webapplication

Теперь моя первая страница, которая представляет собой начальную страницу, имеет тег, который выводит конечный пользователь на страницу сведений.

Я хочу в основном обеспечить, чтобы весь мой конечный пользователь сначала заходил на стартовую страницу, а затем переходил на страницы с деталями. Я хочу ограничить пользователя, если он напрямую откроет http://somecomp.com/details.

Это можно сделать в граале и гриро в некотором быстром виде. Любые указатели помогут.

Благодаря JK

ответ

4

Простой подход может быть использовать фильтр, чтобы перехватить запрос до details страницы, а затем проверить на какой-то флаг может быть в сессии, чтобы увидеть, если посетили первый стартовой.

Установите этот флаг в свой индекс или первое действие стартовой страницы.

StartController

def index(){ 
    session.startVisited = new Date() 
} 

.

class StartPageFilters { 
    def filters = { 
     startCheck(controller: '*', action: '*') { 
      before = { 
       if (!session.startVisited) { 
        redirect(action: '....') 
        return false 
       } 
      } 
     } 
    } 
} 
+3

+1 быстрее меня :-) –

0

Для требуемого сценария подлинный путь для достижения этой цели является использование Grails WebFlow plugin link. Для рабочего примера вы можете обратиться к this git repository.

+3

Это большой молоток для такого маленького гвоздя. –

 Смежные вопросы

  • Нет связанных вопросов^_^