Модель django формирует более одного внешнего ключа, используя исключение - PullRequest
0 голосов
/ 09 января 2019

здесь пользователь, я хочу пользователя и userprofile. используя исключить. при добавлении ошибки userprofile объект 'WSGIRequest' не имеет атрибута 'userprofile'

ModelForm

class ProductForm(forms.ModelForm):
    class Meta:
        model = Product
        fields = ('categories', 'title', 'description', 'image', 'price')
        exclude = ('user','userprofile')

вид

@login_required
def productpost(request):
    form = ProductForm()

    if request.method == "POST":
        form = ProductForm(request.POST, request.FILES)
        if form.is_valid():
            form = form.save(commit=False)
            form.user = request.user
            form.userprofile = request.userprofile
            form.save()
            return success(request)

        else:
            print("The Form Is Invalid")

    return render(request, 'product/postproduct.html', {'form': form})

Модель

class Product(models.Model):
    user = models.ForeignKey(User, on_delete=models.CASCADE)
    userprofileinfo = models.ForeignKey(UserProfileInfo, on_delete=models.CASCADE)
    categories = models.ForeignKey(Categories, on_delete=models.CASCADE)
    title = models.CharField(max_length=255)
    description = models.TextField()
    image = models.FileField()
    price = models.IntegerField()
    pub_date = models.DateTimeField('date published', auto_now_add=True)

    def __str__(self):
        return self.title

    def was_published_recently(self):
        return self.pub_date >= timezone.now() - datetime.timedelta(days=1)
...