знам, че вече има много публикации за това, но опитах много решения и не мога да покажа формуляра си!
Искам да направя нещо наистина просто (аз съм начинаещ в Django), създавам конкретен UserProfile, за да разширя основния, и искам да позволя на потребителя да го редактира:
Ето моят модел:
class UserProfile(models.Model):
user = models.OneToOneField(User)
cc = models.CharField(max_length=400, blank=True)
lang = models.CharField(max_length=5, blank=True, )
def __unicode__(self):
return unicode(self.user.email)
class UserProfileForm(forms.ModelForm):
class meta:
model = UserProfile
def __init__(self,*args,**kwargs):
super(UserProfileForm, self).__init__(*args, **kwargs)
self.user = kwargs['instance']
def create_user_profile(sender, instance, created, **kwargs):
if created:
UserProfile.objects.create(user=instance)
post_save.connect(create_user_profile, sender=User)
Ето моят метод за изглед:
@login_required
def accountform(request):
data = {}
data.update(csrf(request))
user_profile = request.user.get_profile()
data['form'] = UserProfileForm(instance=user_profile)
print user_profile
return render(request, 'accountform.html', data)
Ето моят шаблон:
<form action="/contact/" method="post">
{{ form.as_p }}
<input type="submit" value="Submit" />
</form>
когато покажа от, виждам само бутона за изпращане...