Я пытаюсь создать страницу профиля пользователя, где пользователи могут управлять «клиентами», на которых они подписаны. В целях тестирования я вызываю всю форму {{customer_subscription}} в шаблоне, и он возвращает правильный экземпляр пользователя, но я ожидаю, что он также будет отмечен подписными «клиентами» этого пользователя в экземпляре формы но он ничего не выбирает. Что я делаю не так?экземпляр Django Form не работает
models.py
class UserProfile(models.Model):
user = models.OneToOneField(User)
phone = models.CharField(max_length=10, blank=True)
def __unicode__(self):
return self.user.username
class Customers(models.Model):
customer = models.CharField(max_length=200)
def __unicode__(self):
return self.customer
class Customer_Subscription(models.Model):
user = models.ForeignKey(User)
customers = models.ManyToManyField('Customers')
def __unicode__(self):
return (self.user)
forms.py
class CustomerSubscriptionForm(forms.ModelForm):
class Meta:
model = Customer_Subscription
fields = '__all__'
views.py
def profile(request):
userprofile = UserProfile.objects.get(user=request.user)
customer_subscription = CustomerSubscriptionForm(instance=userprofile)
return render_to_response('profile.html', {'userprofile' : userprofile, 'customer_subscription':customer_subscription, },context_instance=RequestContext(request))
Вы создали модельную модель для модели 'Customer_Subscription', поэтому' instance' должен быть экземпляром 'Customer_Subscription'. Вместо этого вы передаете профиль пользователя, что не имеет смысла. – Alasdair