2016-10-14 4 views
0

У меня есть целое поле в db, которое является полем опций. Я сохраняю параметры в терминах id в db, но я также должен отображать значение в этом поле, относящееся к определенным операциям. Может ли кто-нибудь здесь рассказать мне, как получить текстовое значение из поля int и отобразить его? Ниже мой код:Как получить значение Character из поля базы данных Integer

Html:

<th col width="55%"><label><strong>Risk Estimation</strong></label> 

       <select ng-model="arform.risk_estimate" 
         ng-options="item for item in risk_estimate"> 
        <option style="display:none" value=" risk_estimate.text"></option> 
       </select> 
      </th> 

Контроллер:

{{ngapp}}.controller(
     "SiVerifyAddReviewController", 
     function($scope, $http, $modalInstance, r_header){ 

$scope.risk_estimate = ['High','Medium', 'Low'];}; 

будет в состоянии обеспечить, если в дальнейшем часть кода требуется для понимания. Благодарю.

ответ

1

Вы, вероятно, ищете это: https://docs.djangoproject.com/en/dev/ref/models/instances/#django.db.models.Model.get_FOO_display

{{ object.get_field_display }} 
+0

Он работает. Благодаря! Любая идея как сделать для поля флажка? get_field_display предназначен только для выбора или может также использоваться для флажка? –

+0

@SURYAVISWANATHAN нет. Он работает только для выбранных полей. Но. Вы можете создать свойство cached_property на вашей модели, например 'get_some_field_display', и внутри этого свойства возвращать строку hardcoded или выполнять некоторые вычисления. Затем в шаблонах только обычный {{object.get_some_field_display}} –

+0

По cached_property, вы имеете в виду использование patch_cache_control? Если возможно, не могли бы вы привести мне пример, где я могу использовать cached_property в модели? Я здесь новенький. Благодарю. –

0

По моему разумению вам нужно, чтобы выбранный вариант текста, когда-либо будет изменяться или подать право ?, то вам нужно представить все варианты, как это таким образом, вы получите весь объект опции, который выбран, тогда вы можете извлечь из него значение четного текста. Следуйте за этим:

<select ng-model="selectOption" ng-change="changedValue(selectOption)" 
data-ng-options="option as allOptions.name for option in allOptions"> 
<option value="">Select Account</option> 

// Controller будет выглядеть следующим образом:

function ctrl($scope){ 
    $scope.itemList=[]; 
    $scope.allOptions=[{id:1,name:"a"},{id:2,name:"b"},{id:3,name:"c"}] 

    $scope.changedValue=function(item){ 
    $scope.itemList.push(item.name); 
    }  

} 
+0

Да. Ты прав. Мне нужно отобразить представленное значение. Что делает ng-изменение в вашем коде? Не могли бы вы также отправить мне функцию контроллера (ng-change)? –

+0

@SURYAVISWANATHAN: Конечно, см. Обновленный код. – Jigar7521

+0

@SURYAVISWANATHAN: Это сработало для вас ?, сообщите мне, в противном случае предоставит вам другое альтернативное решение в случае, если вы не сможете изменить свой код. (Пожалуйста, проголосуйте также за него :)) – Jigar7521

Смежные вопросы