Kirill Suhanov
unread,Oct 1, 2010, 7:37:16 AM10/1/10Sign in to reply to author
Sign in to forward
You do not have permission to delete messages in this group
Either email addresses are anonymous for this group or you need the view member email addresses permission to view the original message
to Сообщество ruGrails
Доброго все времени дня.
У меня небольшой вопрос. Задача заключается в следующем: есть контроллер, внутри экшн, и соответственно вьюшка. В этой вьюшке выводится всплывающее окно при определенных условиях. Так вот, хотелось бы сделать так, что если пользователь перемещается в пределах этой вьюшки(ну например совершает действие внутри этой вьюшки, которое перекидывает его снова в себя), это всплывающее окно не появлялось. А если из любого другого места(другой вьюшки, другого контроллера и т.д.), то окно появляется. Т.е. задача сводится к тому, чтобы в экшне проверять, откуда пришел пользователь: из этого же экшна, или откуда-то из другого места. Интересует вопрос, есть ли в грэйлсе встроенные средства для этого?
У меня появились следующие идеи: сделать фильтр, распространяющийся на все, который берет имя контроллера и экшна и добавляет их во flash, соответственно в любом экшне можно будет получить из флэша инфу, откуда он был вызван. Но фильтр на все - это дополнительная нагрузка. Может быть разработчики уже продумали этот момент...
Была идея и по referer'у получать из http заголовков. Но тут много лишнего: нужно будет определять action, и если используется url mapping, то тоже проблемы.