2012-02-01 11 views
0

レール3.1でハンドルバーテンプレートをアクセスできなくなりました。私は、次のコントローラがあります物事のレール側でEmber.jsアセットパイプライン "テンプレートを見つけることができません"

Lead.Controllers.UrlSearch = Ember.Object.extend 
    init: -> 
    view = Ember.View.create 
     controller: @ 
     urlSearchBinding: 'controller.url_search' 
     templateName: 'app/templates/url_search/show' 

を、私は設定/初期化子/ sprockets.rbで、次の初期化スクリプトを持って

require 'sprockets/ember_handlebars' 

Rails.application.assets.register_engine 'hjs', EmberHandlebars 

マイEmberHandleBars

は次のようになります。

app/assets/javascripts/app/templates/url_search/show.jst.hjs

0123:最後に、テンプレートが置かれている
require 'tilt' 
require 'json' 

class EmberHandlebars < Tilt::Template 
    def self.default_mime_type 
    "application/javascript" 
    end 

    def prepare 
    end 

    def evaluate(scope, locals, &block) 
    "Ember.TEMPLATES['#{scope.logical_path}'] = Ember.Handlebars.compile(#{data.to_json})" 
    end 
end 

そこにエラーコンソールで

、私はこの404リソース・エラーを取得:

GET 
http://localhost:3000/assets/app/templates/url_search/show.hjs.js?body=1 
404 (Not Found) 

とも

Error: - Unable to find template "app/templates/url_search/show".

私は特に指定しているとき、それはhjs.jsファイルを探して、なぜ私は混乱していますし、なぜそれがテンプレートを見つけることができません。

私が間違っていることを誰も見ることができますか?

答えて

1

ファイル拡張子の形式を.jst.hjsから.hjsに変更すると問題が解決しました。

関連する問題