我正在嘗試使用這裏找到的其他一些問題/答案以及網絡上的教程來擴展用戶配置文件。我試圖在管理員中包含UserProfile模型,以便我可以更改配置文件的詳細信息(暫時暫時),但即使將UserProfile包含在admin.py中,也不會顯示,這使我相信我是在這裏做錯誤的事情。如何在django中擴展用戶配置文件?
model.pyclass UserProfile(models.Model):
user = models.ForeignKey(User, unique=True)
quote = models.CharField('Favorite quote', max_length = 200)
def create_user_profile(sender, instance, created, **kwargs):
if created:
UserProfile.objects.create(user=instance)
post_save.connect(create_user_profile, sender=User)
的URLconf
(r'^accounts/register/$', 'register'),
視圖view.py該登記用戶
def register(request):
if request.method == 'POST':
form = UserCreationForm(request.POST)
if form.is_valid():
new_user = form.save()
return HttpResponseRedirect('reserve/templates/index.html')
else:
form = UserCreationForm()
c = {'form': form}
return render_to_response("registration/register.html", c, context_instance=RequestContext(request))
admin.py
from reserve.models import UserProfile
from django.contrib import admin
admin.site.register(UserProfile)
UserProfile應該可能是與用戶的OneToOne。你的models.py中的縮進是否正確?它看起來不對...... – 2012-07-24 14:57:15
你能包括admin.py – scytale 2012-07-24 14:58:28
@ColinDunklau:'ForeignKey(unique = True)'*是*'OneToOneField'。 – 2012-07-24 15:08:26