AbstractUser和UserChangeForm元选项Django

时间:2013-12-18 09:56:19

标签: django django-forms django-admin

我正在尝试创建一个Django表单,允许我在创建AbstractUser时包含图像字段。

## models.py
class Student(AbstractUser):

    def __unicode__(self):
        string = self.get_full_name()
        return unicode(string)
    photo = models.ImageField(upload_to='photos')

## admin.py
class StudentChangeForm(UserChangeForm):

    class Meta:
        model = Student



class StudentCreationForm(UserCreationForm):

    class Meta:
        model = Student

    def clean_username(self):
        username = self.cleaned_data["username"]
        try:
            Student.objects.get(username=username)
        except Student.DoesNotExist:
            return username
        raise forms.ValidationError(self.error_messages['duplicate_username'])

尽管添加了应该为表单创建额外字段的元类,但它似乎是排除了照片字段。我已经尝试过根本不起作用的fields = ['photo']。我知道UserChangeForm继承了用户的所有变化能力,但是我应该如何将照片图像字段添加为更改表单和创建表单的一部分?

0 个答案:

没有答案