2017-04-26 38 views
2

我試圖做一個形式,以在數據庫中添加一個user但在這種形式我想做出選擇的「角色」與所有已經存在的角色在數據庫中。 但是當我選擇一個角色併發布我的表單時,在json中,屬性將數據庫中已存在的對象的值與我想要添加到新用戶中的相同角色相關聯,如何才能將「文字「而不是整個對象?選擇獲得一個對象,而不是一個字符串值

<select ng-model="formData.role" 
     ng-options="user as user.role for user in users"> 
</select> 

回答

0

ng-options="u.role as u.role for u in users"會做到這一點。這裏是一個演示:

var myApp = angular.module('myApp', []); 
 

 
function MyCtrl($scope) { 
 
    $scope.users = [{firstname: 'Jon', role : 'Admin'}, 
 
        {firstname: 'Rob', role : 'User'}, 
 
        {firstname: 'Ned', role : 'Guest'}]; 
 
}
<script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.2.23/angular.min.js"></script> 
 

 
<div ng-app="myApp" ng-controller="MyCtrl"> 
 
    Roles: <select ng-model="selected" ng-options="u.role as u.role for u in users"></select> 
 
    selected: {{selected}} 
 
</div>

0

我認爲像這樣

<select ng-model="formData.role" 
    ng-options="user.role as user.role for user in users"> 
</select> 

您也可以參考docs

+0

謝謝,我啞哈哈 – Tewan

0

假設你想user.role那麼它應該是文字而不是整個用戶:

<select ng-model="formData.role" 
     ng-options="user.role as user.role for user in users"> 
</select> 
相關問題