2016-04-16 2 views
0

Я пытаюсь эмулировать такое же поведение, как поведение gmail, где URL-адрес изменяется в зависимости от того, какую ссылку вы нажали, например, https://mail.google.com/mail/u/0/#inbox.Параметр Rails Hash в URL Rails Маршруты

Эта ссылка показывает, как add a Hash parameter in the URL Rails Routes

Тогда можно использовать jquery to modify the URL hash to add the hash parameter when the view is loaded

От моего тестирования следующего маршрута /route#sent рассматриваются как /route на сервере

Часть головоломки, которые я пропускаю как route to the corresponding route as the hash parameter is not sent to the server?

+0

Сервер не может получить хэш URL-адреса как часть параметров _request_. Грязный подход для этого будет включать jQuery. При загрузке страницы вы можете проверить, имеет ли URL-адрес хэш-код. Если он отправлен '/ route # ', вы можете сделать запрос от JS на что-то вроде'/route? Query = sent'. Когда эта страница загружается, url не будет иметь хеш, и ваш JS будет составлять хэш из URL-адреса '/ route # sent'. – kiddorails

ответ

0

Часть после хэша в основном предназначена для браузера. На загруженной странице, если хеш изменяется 1000 раз, браузер не будет запрашивать вещь на сервере!

Используйте JS-фреймворк (например, Angular/Vue) или jQuery для определения изменений хэша и загрузки содержимого соответственно!