2012-02-29 2 views
1
  1. Я хотел бы знать, есть ли в Rails-приложении стандартная (не зависящая от Rails) папка, куда поместить javascripts или таблицы стилей.
  2. Когда я вставляю javascript_include_tag и stylesheet_link_tag, они ссылаются на/активы по умолчанию. Как указать папку, содержащую javascripts или папку, содержащую таблицы стилей?
  3. Я читал, что есть какая-то конфигурация Rails.application.config.assets.paths, которая позволяет мне указывать папку для активов (кстати, в каком файле .rb следует указать ее значение?). Но, похоже, она указывает одну папку для всех файлов JS и CSS, но я хочу их хранить в отдельных папках.

ответ

2
  1. Для рельсов 3 вы можете положить все ваши JavaScripts и CSS файлы в общественных/активов/JavaScripts и государственных/активов/таблиц стилей javascript_include_tag будет подсоединена правильно в этом случае. Для рельсов 2 одинаково, просто оставь активы.
  2. Эти теги являются помощниками, поэтому они указывают на папку с активами и соответственно на папку/javascripts или/stylesheets.

    <%= javascript_include_tag "something" %> 
    

    генерирует ссылку на /assets/javascripts/something.js

  3. Вы можете изменить путь в конфиге/application.rb просто место

    config.assets.enabled = true 
    config.assets.paths << "#{Rails.root}/app/or_whatever_path_to_use" 
    

    там

+0

2. Что касается меня, я получаю только /assets/something.js, и это моя самая большая проблема. – Paul

+0

настроить корень пути активов путем определения Base.asset_host http://api.rubyonrails.org/classes/ActionView/Helpers/AssetTagHelper.html; 'ActionController :: Base.asset_host = "assets.example.com"' в средах/development.rb, средах/production.rb – Vikko

+0

жаль, что я неправильно понял ваш комментарий, /assets/something.js правильно, на сервер, он укажет на папку javascript. Папка app/assets/stylesheets и app/assets/javascripts - это просто физическое расположение скриптов и листов, на сервере они попадают в одну большую кучу @ yourserver.com/assets/ – Vikko

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