2009-10-12 127 views
0

顯示模型屬性我有使用GeoIP的庫來渲染的IP地址該記錄的國家的典範:從Django中對管理員

class PageIP(models.Model): 
    """ 
    Detail of page 
    """ 
    ip_address = models.IPAddressField(blank=True,verbose_name="IP Address") 


    def _client_country(self): 
     g = GeoIP() 
     return g.country(self.ip_address) 

    client_country = property(_client_country) 

有什麼辦法,以顯示在此屬性(client_country) Django 1.1管理員?正如目前所寫,這不會出現在管理員。

乾杯。

+0

Django在這裏說:http://docs.djangoproject.com/en/dev/ref/models/fields/#ipaddressfield管理員表示這是一個(單行輸入)。所以它應該肯定會出現 – 0100110010101 2009-10-12 18:40:52

回答

0

你應該把它放到admin.py文件:

from django.contrib import admin 
admin.site.register(PageIP) 

,它很快就會出現在那裏。 另外,請確保您的應用程序在settings.py下INSTALLED_APPS

+0

模型在那裏,就像字段ip_address一樣。 我需要在管理員client_country雖然。 – 2009-10-12 18:44:34

+0

爲什麼不試試__str __(self)?因爲寫入你應該添加一個setter,而不僅僅是getter。 – 0100110010101 2009-10-12 19:03:52

+0

偉大的想法 - 這是如此明顯,我沒有想到它。不過,我會使用__unicode __(self)。 – 2009-10-14 14:00:35