привет, я хочу сэкономить на базе данных, откуда приходит форма с любой страницы (страница - страница продукта), я хочу создать веб-сайт ecomerce (около sh при доставке), и теперь у меня есть особенность, что любой продукт Упорядоченный в этой форме, форма - это работа. Мне нужно только это последнее поле. Идентификатор продукта
проблема, я думаю, есть в представлениях, чтобы увидеть все поля, прокрутите вниз: form = Modelform (request.POST)
Modelform.Product.filter(id=p_id)
if form.is_valid():
post = form.save(commit=False)
#p_id =Product.objects.filter( id=p_id)
#Modelform(initial={'p_id':p_id})
post.save()
form = Modelform()
модели:
from django.db import models
class Product(models.Model):
title = models.CharField(max_length=50 , default='product title')
price = models.CharField(max_length=10 , default= int('0'))
delPrice = models.CharField(max_length=10, default=int('0'))
img1 = models.ImageField(upload_to='product_gallry',default='img')
img2 = models.ImageField(upload_to='product_gallry',default='img')
img3 = models.ImageField(upload_to='product_gallry',default='img')
description = models.TextField(max_length=5000 , default='description')
Video_Link = models.TextField(max_length=5000 , default='Video_Link')
def __unicode__(self):
return u'%d' % self.id
class Form (models.Model):
Product = models.ForeignKey(Product,null=True, blank=True,on_delete=models.SET_NULL)
name = models.CharField(max_length= 100 , default=None)
number = models.CharField(max_length=13,default=None)
adresse = models.CharField(max_length=500,default=None)
city = models.CharField(max_length=20, default=None)
просмотров:
from .form import Modelform
from .models import Product , Form
from django.shortcuts import render
from django.shortcuts import get_object_or_404
from django.utils import timezone
def p_page(request,p_id):
obj = Product.objects.all()
template = "index.html"
product = get_object_or_404(obj,id=p_id)
if request.method =='POST':
form = Modelform(request.POST)
Modelform.Product.filter(id=p_id)
if form.is_valid():
post = form.save(commit=False)
#p_id =Product.objects.filter( id=p_id)
#Modelform(initial={'p_id':p_id})
post.save()
form = Modelform()
context = {
'form': form,
'product': product,
}
return render(request,template, context,)
form.py:
from django import forms
from . import models
from .models import Product
class Modelform(forms.ModelForm):
Product = forms.ModelChoiceField(queryset=Product.objects.all(),
)
name = forms.CharField(max_length=100,
widget=forms.TextInput(
attrs={
'style': ' height: 20%; display: inline-block; width: 80%; text-align: center; font-size: 30px; margin: 7px 2.5%; float: right; background: white; color: #c50d2c;',
'placeholder': 'Write your name here'
}
)
)
number = forms.CharField(max_length=13,
widget=forms.TextInput(
attrs={
'style': ' height: 20%; display: inline-block; width: 80%; text-align: center; font-size: 30px; margin: 7px 2.5%; float: right; background: white; color: #c50d2c;',
'placeholder': 'Write your name here'
}
)
)
adresse = forms.CharField(max_length=500,
widget=forms.TextInput(
attrs={
'style': ' height: 20%; display: inline-block; width: 80%; text-align: center; font-size: 30px; margin: 7px 2.5%; float: right; background: white; color: #c50d2c;',
'placeholder': 'Write your name here'
}
)
)
city = forms.CharField(max_length=20,
widget=forms.TextInput(
attrs={
'style': ' height: 20%; display: inline-block; width: 80%; text-align: center; font-size: 30px; margin: 7px 2.5%; float: right; background: white; color: #c50d2c;',
'placeholder': 'Write your name here'
}
)
)
class Meta:
model = models.Form
fields = ['name','number','adresse','city','Product']