所以我在 django 中创建了一个通用的“帐户”页面。我使用了 django-registration 插件,目前有一个(djang-standard)用户对象,以及一个 UserProfile 和 UserProfileForm 对象。
我想这是一个风格或最佳实践的问题。我的计划是“正确的”还是有“更好/推荐/标准的方式”来做到这一点?
我打算做的是从 request.user 创建 UserProfile 即:
form = UserProfileForm(instance=User)
(并将该表单发送到视图),并在 UserProfileForm 中:
class UserProfileForm(forms.ModelForm):
class Meta:
model = UserProfile
def __init__(self,*args,**kwargs):
super(UserProfileForm, self).__init__(*args, **kwargs)
if kwargs.has_key('instance'):
self.user = kwargs['instance']
我的 UserProfile 非常像这样:
class UserProfile(models.Model):
user = models.OneToOneField(User)
points = models.IntegerField(default=0) #how is the user going with scores?
以及用户在哪里django.contrib.auth.models
。
好的!编辑和保存的处理将通过mixin
django 的东西来完成,或者更可能是因为我还没有阅读过我自己的处理 post 和 get 的用户定义视图的 mixins。但是忽略这一点 - 因为我确定我应该使用 mixins - 上面的“对吗?” 或者有什么建议吗?
干杯!