2010-05-11 11 views
8

Site yöneticisinin Twitter API'sini kullanmak için Twitter Kullanıcı Adı/Parolalarını girdiği bir Django sitesine sahibim.Bir CharField kullanma adminde bir PasswordInput kullanın

class TwitterUser(models.Model): 
screen_name = models.CharField(max_length=100) 
password = models.CharField(max_length=255) 
def __unicode__(self): 
    return self.screen_name 

Bir şifre girişi olarak password alanını görüntülemek için Yönetici siteyi gerekir, ancak bunu nasıl anlamaya görünüyor olamaz: Model böyle kurulur. Ben, kendi form oluşturarak, ...

the docs itibaren

cevap

18

bir ModelAdmin sınıf bir ModelForm ile ModelAdmin kullanarak denedi, ama bir şifre girişi olarak meydana Django ekranını nasıl anlamaya görünüyor olamaz böyle bir şey:

from django.forms import ModelForm, PasswordInput 

class TwitterUserForm(ModelForm): 
    class Meta: 
     model = TwitterUser 
     widgets = { 
      'password': PasswordInput(), 
     } 

Ya bunu like this yapabilirsiniz:

from django.forms import ModelForm, PasswordInput 

class TwitterUserForm(ModelForm): 
    password = forms.CharField(widget=PasswordInput()) 
    class Meta: 
     model = TwitterUser 

bir iyidir hiçbir fikrim yok - bu hala ge olacak demektir beri hafifçe ilkini tercih Herhangi bir help_text ve verbose_name modelinizden. , Daha sonra yönetici bu gibi formu kullanarak yapabilirsiniz Çektiğiniz bu iki yaklaşımın hangi olursa olsun

(uygulamanıza en admin.py):

from django.contrib import admin 

class TwitterUserAdmin(admin.ModelAdmin): 
    form = TwitterUserForm 

admin.site.register(TwitterUser, TwitterUserAdmin) 
Ben de öyleyim, ilki için gitmek söyleyebilirim
+0

Şifre için temiz yöntem ikinci sürümde aynı olacağından emin değil. – KillianDS

+0

Teşekkürler, bunu dokümanlar bölümünde görmüştüm ama 'adminUniteAdmin'i' admin.site.register 'satırına eklemeyi unuttum, bu yüzden açıkça doğru çalışmıyordu. Teşekkürler! –

+0

@Paul - sorun değil, yardımcı olabilirim! –

İlgili konular