2016-11-29 10 views
1

thymeleafにコンテキストからオブジェクトのjsonを出力する方法はありますか?私はコントローラの中でそれをすることができますが、本当にしたくないです。オブジェクトをthymeleafテンプレート内のJSON直列化

コントローラー:

@RequestMapping("/{projectId}/edit") 
public String editProject(Model model, @PathVariable Long projectId) { 
    Project project = projectRepo.findOne(projectId); 
    // Below line works, but I want to put the object to the model 
    // model.addAttribute("project", new ObjectMapper().writeValueAsString(project)); 
    model.addAttribute("project", project); 
    return "project/edit"; 
} 

部分テンプレート:

<script> 
    var app = new Vue({ 
     el: '#app', 
     data: { 
      project: [(${project})] 
     } 
    }); 
</script> 

答えて

5

Thymeleafは、箱から出してこれを行い、私はあなただけth:inline="javascript"を追加する必要があると思います。

http://www.thymeleaf.org/doc/tutorials/2.1/usingthymeleaf.html#script-inlining-javascript-and-dart

<script th:inline="javascript"> 
    var app = new Vue({ 
     el: '#app', 
     data: { 
      project: /*[[${project}]]*/ {} 
     } 
    }); 
</script> 
+0

おかげで、素晴らしいthatsの。 {} –

+1

の後にセミコロンを付けずに動作します。これはJSONではありません。それはJavascriptです。 JSON( '

関連する問題