2011-11-29 5 views
0

나는 ModelAdmin 클래스의 list_display에 float 필드를 가지고 있는데, 그것들을 지역화 된 (1.000,00과 같이) 표시하고 싶습니다. 이미 USE_L10N과 USE_I18N이 ​​True로 설정되어 있지만 충분하지 않습니다.장고 관리자의 list_display 필드를 지역화하는 방법은 무엇입니까?

내가 가진 현재 솔루션은 다음

작동하지만 불필요한 코드를 많이 같은 외모를 가지고 각 부동 소수점 필드에 대한 하나의 방법을 정의
from django.utils import formats 

class MyAdmin(admin.ModelAdmin): 
    list_display = ('localized_myfield') 

    def localized_myfield(self, instance): 
     return formats.localize(instance.myfield) 

. 이 작업을 수행하는 더 간단한 방법이 있습니까?

답변

0

일부 연구를 통해 답변을 찾았습니다. 내가 원하는 것을 달성하기 위해, 세 가지가 필요하다 : settings.py에서

  • USE_L10N = 진정한
  • settings.py에서
  • USE_THOUSAND_SEPARATOR
  • myfield = forms.DecimalField (지역화 = 참) forms.py에서 (마침내 DecimalField가 Floatfield보다 더 나은 선택이라는 것을 깨달았습니다.
관련 문제