2012-02-06 3 views
3

Я пытаюсь использовать Звездочки с CoffeeScript файлами вне Rails, но директивы не обрабатываются:Использование звёздочки вне рельсов - директивы не работают

# app.js.coffee 
#= require models/user 
# some other code... 

Теперь, этот файл обрабатывается:

require 'sprockets' 
root = 'some path...' 
env = Sprockets::Environment.new(root) 

env.append_path(File.join(root)) 
env.append_path(File.join(root, 'models')) 

compiler = Sprockets::StaticCompiler.new(env.index, 
             'output', 
             %w(app.js.coffee), 
             :digest => nil, 
             :manifest => false) 
compiler.compile 

код из app.js.coffee делает компилируются, но содержимое из models/user не включены (и не возникает никаких ошибок).

Это со звездочками 2.0.3.

Любые идеи?

+0

Кстати, я вытащил этот код из 'actionpack/lib/sprockets/assets.rake'. – Ivan

+0

, поскольку вы уже успешно используете звездочки за пределами рельсов, не могли бы вы помочь мне разобраться в этом? http://stackoverflow.com/q/11267677/48523 – Andrew

ответ

0

О, боже мой, после погружения в источник в течение часа или около того, я узнал, что Sprockets будет слушать только директивы в верхней части файла, что также указано в документах, которые я как-то пропустил ...

+0

Да, я ищу способ, которым требуется не в верхней части файла. При удаче? –