Ruby on Rails ajax - динамически загружает все страницы - PullRequest
0 голосов
/ 04 февраля 2010

У меня есть флэш-медиаплеер (похожий на lala.com), который должен продолжать потоковую передачу, пока люди щелкают.Я не хочу использовать iframe.

Итак, мне нужно динамически загружать все страницы сайта с помощью ajax независимо от того, по какой ссылке нажимают люди.

У меня это работает с Railsи JQuery для одной страницы.С помощью этого метода я должен поместить файл file.js.erb для любого вызываемого контроллера.Пример: example.com/home вызван, и я должен иметь index.js.erb в домашнем каталоге представлений, чтобы ответить на это.

Я использовал: http://railscasts.com/episodes/174-pagination-with-ajax

, чтобы получитьэто работает на одной странице, но копировать файлы .js.erb на каждый контроллер совсем не будет СУХОЙ.

Можно ли что-то сделать с основным application_controller или даже с rout.rb?

Ответы [ 2 ]

1 голос
/ 04 февраля 2010

Я нашел способ сделать это.Вы можете загрузить любые нужные вам страницы с помощью метода загрузки jquery.

$('#result').load('ajax/test.html #container');

Они будут помещены в div с идентификатором #result.Вы также можете указать фрагмент страницы с помощью #container, чтобы загружать только ту часть, которую вы хотите.Это позволяет всем вашим контроллерам оставаться в такте и т. Д. Без лишних js.

0 голосов
/ 04 февраля 2010

Это действительно повлияет на вашу видимость для поисковых систем. Я также думаю, что это будет означать, что вам нужно думать о потоке ваших контроллеров. Вместо того, чтобы контроллеры отвечали представлениями, представляющими страницу, контроллеры будут отвечать фрагментами HTML / JSON / и т. Д., Которые вставляются в домашнюю страницу. Ваша домашняя страница выступает в роли координатора, загружая и загружая контент. Прекрасно иметь файлы js.erb в каждой папке просмотра ... так как они должны возвращать контент, специфичный для отдельного контроллера.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...