Как поместить JavaScripts где-нибудь кроме / public / javascripts в Rails 3? - PullRequest
0 голосов
/ 25 января 2011

У меня есть представление Rails 3 (для my_controller # show), в котором много JavaScript.

Я бы хотел переместить этот JavaScript в отдельный файл my_show.js, а затем включить этот файл с помощью Rails'javascript_include_tag метод.Это работает, если я положу my_show.js в каталог /public/javascripts.Но я бы предпочел поместить файл в тот же каталог, с которым он связан.

Можно ли настроить рельсы так, чтобы я мог использовать javascript_include_tag для включения файлов вне /public/javascripts?

Мое решение сейчас состоит в том, чтобы сделать партиал с именем _my_show.html.haml.В этот файл я положил свой код JavaScript.Затем я включаю файл с render.

Мне интересно, есть ли предпочтительный способ Rails 3 делать то, что я хочу.

Ответы [ 3 ]

2 голосов
/ 09 мая 2011
1 голос
/ 25 января 2011

Вы можете подумать о создании маршрута для файла js.

get '/my_controller/show_js.js' => 'my_controller#show_js'

И поместить свой js-контент в views/my_controller/show_js.js.erb

Теперь вы сможете включить свой js-файл с помощью:

javascript_include_tag "/my_controller/show_js.js"
0 голосов
/ 18 июля 2011

Предстоящие Rails 3.1 включают в себя Sprockets gem , чтобы обеспечить функцию конвейера активов, которая предлагает большую гибкость в размещении JavaScript и других активов.

Можно такжеиспользуйте звездочки независимо от Rails 3.1.

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