2013-08-29 37 views
1

我正在尝试在Rails应用程序中通过胡须模板渲染一些json数据。渲染保存在文件中的小胡子模板

我的出发点是这样railscast:http://railscasts.com/episodes/295-sharing-mustache-templates

中投Rayn确实像

$('#target').append Mustache.to_html($('#project_template').html(), json-data) 

在HTML中有与包含模板ID = “project_template” 一个div

<script type="text/html" id="project_template"> 
... 
</script> 

但是,我想能够将胡子模板存储到一个文件中(比如在app/views/projects/project.mustache中)并直接加载它在我的js。 喜欢的东西

$('#target').append Mustache.xxxxx(MUSTACHE_FILE, json-data) 

我环顾四周,但我无法找到任何工作或任何建议。这有可能实现吗?

谢谢。

回答

0

您无法直接访问javascript中的服务器端文件,但可以使用另一种方式在服务器端存储模板。

例如,您可以将模板存储在app/views/projects/project.mustache中。

在你project.mustache,你可以写:

<script type="text/html" id="project_template"> 
... 
</script> 

在您看来,您可以使用:

<%= render :file => 'projects/project.mustache' %> 

而且使用JavaScript作为以前一样。

$('#target').append(Mustache.to_html($('#project_template').html(), json-data)); 

我认为这是不完美的,但它应该工作:)

+0

这正是railscast做什么。我正在寻找不同的方法。谢谢你的方式。 – macsig

+0

哦,对不起,我没有看演员,因为它是专业演员,否则我不会提交这个答案。在你的问题中,你似乎希望通过javascript获得服务器端模板的内容,这比这个解决方案复杂得多:) – Bigxiang