2014-09-30 25 views
0

我正在開發一個帶有play framework和angularJs的web應用程序。 而我有以下路線。將角度數據傳遞給scala路由

GET  /user/view/:id  controllers.User.view(id:String) 

GET /用戶/視圖/:ID controllers.User.view(ID:字符串)

在我看來,我有一個鏈接。

<tr> 
    <td>#</td> 
    <td>{{user.email}}</td> 
    <td>{{user.lastname}}</td> 
    <td>{{user.firstname}}</td> 
    <td><a href="@routes.User.view("{{user.email}}")">More</a></td> 
</tr> 

我不知道如何將user.email傳遞給路由。 幫助。

回答

0

您沒有使用服務器端生成的模板應該工作。所以你應該使用$ http get。

<td><a href="@routes.User.view("{{user.email}}")">More</a></td> 

將是

<td><a href="" ng-click="showUser(user)">More</a></td> 

然後在你的控制器,你可以做這樣的事情

$scope.showUser = function(user) { 
    $http.get('/user/view/'+user.email).then(function(result) { 
      $scope.user = result.data; 
    }); 
} 
0

試試這樣:ng-click="@routes.User.view(user.email)"

user.email應該是$scope因此上面的代碼的一部分

+0

這是行不通的。 Scala假定user.email是scala變量。錯誤:編譯錯誤 - 對象電子郵件不是包的成員views.html.user – 2014-09-30 07:13:33

+0

不知道那時,我認爲它是一個角度問題,它無法正確調用服務器。 – Tim 2014-09-30 07:18:06