我已在在models.py如下:Django的2種型號ManyToManyField在admin.py
class Choices(models.Model):
description = models.CharField(max_length=300)
def __unicode__(self):
return self.description
class UserProfile(models.Model):
user = models.ForeignKey(User, unique=True)
fullname = models.CharField(_('Full Name'), max_length=50)
birthdate = models.DateTimeField(_('Birthday'))
url = models.URLField(_('Website'), blank=True)
company = models.CharField(_('Company'), max_length=50)
CATEGORY_CHOICES = (
('M',_('Male')),
('F',_('Female')),
)
gender = models.CharField(_('Gender'), max_length=200, choices = CATEGORY_CHOICES)
picture = models.ImageField(_('Picture/Avatar'), upload_to='profile_photo', blank=True)
bio = models.TextField()
planguages = models.ManyToManyField(Choices)
現在,我希望能夠編輯在管理這兩個用戶配置文件,以及選擇填充選擇用戶可以從創建配置文件時選擇。作爲一個django新手,我設法只編輯用戶配置文件的選項,但沒有設法填充選擇。無論如何,我可以做到,但我不知道如何擁有兩者。
編輯: 這是我目前的admin.py
class ChoicesAdmin(admin.ModelAdmin):
list_display = ['description']
class ProfilesAdmin(admin.ModelAdmin):
list_display = ['user']
admin.site.register(UserProfile, ProfilesAdmin)
我做了,我設法做到了,但它向我展示了綁定到用戶的選擇,而不是我可以定義的選擇。 – Milos
@ user1164124 - 如果您爲'Choices'設置了'ModelAdmin',那麼您的'planguages'字段旁邊會出現一個加號圖標,它會將您帶到選擇創建屏幕。 –
@YujiTomita我嘗試過,但它說不支持ManyToMany字段。 – Milos