2013-04-26 54 views
2

我想從比賽中的一個模板返回.js文件框架2.將Play!Framework2作爲模板呈現嗎? !

這是我怎麼做的:

在我的意見的文件夾,我創建了一個模板文件:

initials.scala.js 

Containinig類似:

{ 
    'data': @Model.find.findList() 
} 

,然後在我的控制器:

public static Result initials() { 
    return ok(views.js.initials.render()); 
} 

這對我來說是非常簡單明瞭,但是我得到這個錯誤:

error: package views.js does not exist

我做了什麼錯?

如果我將js重命名爲txt(在控制器中的文件名和包調用中),一切正常。但是,如果我將其更改爲js,則會出現錯誤。

+1

它即將推出https://github.com/playframework/Play20/commit/0b0b37dd095 – 2013-06-03 02:10:33

回答

3

你沒有做錯任何事,Play允許你只使用.html.xml.txt擴展視圖,所以你需要使用其中的一個。

但從不要緊,你會用哪一個技術點,反正你需要從控制器返回它,如JavaScript,即有:通過放置路線

public static Result initials() { 
    return ok(views.html.initials.render()).as("application/javascript"); 
} 
+0

這很難過,有什麼理由嗎?我可以理解像.exe這樣的文件,但對於像.js和.css這樣的可能包含變量的文件,它可能很有用。 – 2013-04-26 11:52:14

0

這是可能的您的路線定義中的特定資產。

即。 GET /assets/javascripts/initials.js controllers..initials()

0

你可以有一個scala.js文件,但你不views.js.initials.render()稱之爲而是js.initials.render()

至少使用Scala它播放2.2工程