2013-12-18 14 views
6

एक एक-से-एक एक्सटेंशन जैसे Django उपयोगकर्ता मॉडल के रूप में एक मॉडल, यह देखते हुए से एक मूल्य:प्रवेश, एक एक-से-एक मेज

class UserProfile(models.Model): 
    user  = models.OneToOneField(User, related_name='profile', unique=True) 
    avatar  = models.ImageField(_('Avatar')) 
    foo   = models.CharField(max_length=100, verbose_name="xxx") 

मैं में है कि कैसे प्रदर्शित कर सकते हैं व्यवस्थापक?

class UserAdmin(admin.ModelAdmin): 
    list_display = ('email', 'profile__foo' <--NOT WORKING) 

एक के पास मैच सवाल यह है कि Django Admin: How to display value of fields with list_display from two models which are in oneToOne relation?

उत्तर

11

सामान्य तरीका होगा:

class UseAdmin(admin.ModelAdmin): 
    list_display = ('email', 'profile_foo') 
    def profile_foo(self, x): 
     return x.profile.foo 
    profile_foo.short_description = 'foo' 

यहां एक्स मॉडल आप

प्रदर्शित कर रहे हैं की वस्तु है
संबंधित मुद्दे