映像未存储在python django中的数据库mysql workbench iin中
我正试图从我的“产品表单”中将产品图像保存到数据库中。但是当我从管理部分插入值时,图像没有存储,此时值可以存储 型号.py映像未存储在python django中的数据库mysql workbench iin中,python,mysql,django,Python,Mysql,Django,我正试图从我的“产品表单”中将产品图像保存到数据库中。但是当我从管理部分插入值时,图像没有存储,此时值可以存储 型号.py photo = models.ImageField(upload_to='profile_images', blank=True) photo = forms.ImageField() def add_product(request): success = False if request.method == "POST": product
photo = models.ImageField(upload_to='profile_images', blank=True)
photo = forms.ImageField()
def add_product(request):
success = False
if request.method == "POST":
product_form = ProductForm(request.POST)
if product_form.is_valid():
success = True
photo = product_form.cleaned_data['photo']
category = Category.objects.get(name=product_form.cleaned_data['category'])
title = product_form.cleaned_data['title']
type= product_form.cleaned_data['type']
description = product_form.cleaned_data['description']
product = product_form.cleaned_data['product']
quantity = product_form.cleaned_data['quantity']
price = product_form.cleaned_data['price']
new_product = Product(category = category, title = title, photo = photo, product = product, quantity = quantity, price = price,type=type,description=description )
new_product.save()
new_product_form = ProductForm()
ctx2 = {'success':success, 'product_form':new_product_form}
return render_to_response('advertisement/ad.html', ctx2 , context_instance=RequestContext(request))
else:
product_form = ProductForm()
ctx = {'product_form':product_form}
return render_to_response('advertisement/ad.html', ctx , context_instance=RequestContext(request))
IMAGES_ROOT = os.path.join(os.path.dirname(__file__), '../static/img/')
STATICFILES_DIRS = (
# Put strings here, like "/home/html/static" or "C:/www/django/static".
# Always use forward slashes, even on Windows.
# Don't forget to use absolute paths, not relative paths.
os.path.join(os.path.dirname(__file__), '../static'),
)
forms.py
photo = models.ImageField(upload_to='profile_images', blank=True)
photo = forms.ImageField()
def add_product(request):
success = False
if request.method == "POST":
product_form = ProductForm(request.POST)
if product_form.is_valid():
success = True
photo = product_form.cleaned_data['photo']
category = Category.objects.get(name=product_form.cleaned_data['category'])
title = product_form.cleaned_data['title']
type= product_form.cleaned_data['type']
description = product_form.cleaned_data['description']
product = product_form.cleaned_data['product']
quantity = product_form.cleaned_data['quantity']
price = product_form.cleaned_data['price']
new_product = Product(category = category, title = title, photo = photo, product = product, quantity = quantity, price = price,type=type,description=description )
new_product.save()
new_product_form = ProductForm()
ctx2 = {'success':success, 'product_form':new_product_form}
return render_to_response('advertisement/ad.html', ctx2 , context_instance=RequestContext(request))
else:
product_form = ProductForm()
ctx = {'product_form':product_form}
return render_to_response('advertisement/ad.html', ctx , context_instance=RequestContext(request))
IMAGES_ROOT = os.path.join(os.path.dirname(__file__), '../static/img/')
STATICFILES_DIRS = (
# Put strings here, like "/home/html/static" or "C:/www/django/static".
# Always use forward slashes, even on Windows.
# Don't forget to use absolute paths, not relative paths.
os.path.join(os.path.dirname(__file__), '../static'),
)
视图.py
photo = models.ImageField(upload_to='profile_images', blank=True)
photo = forms.ImageField()
def add_product(request):
success = False
if request.method == "POST":
product_form = ProductForm(request.POST)
if product_form.is_valid():
success = True
photo = product_form.cleaned_data['photo']
category = Category.objects.get(name=product_form.cleaned_data['category'])
title = product_form.cleaned_data['title']
type= product_form.cleaned_data['type']
description = product_form.cleaned_data['description']
product = product_form.cleaned_data['product']
quantity = product_form.cleaned_data['quantity']
price = product_form.cleaned_data['price']
new_product = Product(category = category, title = title, photo = photo, product = product, quantity = quantity, price = price,type=type,description=description )
new_product.save()
new_product_form = ProductForm()
ctx2 = {'success':success, 'product_form':new_product_form}
return render_to_response('advertisement/ad.html', ctx2 , context_instance=RequestContext(request))
else:
product_form = ProductForm()
ctx = {'product_form':product_form}
return render_to_response('advertisement/ad.html', ctx , context_instance=RequestContext(request))
IMAGES_ROOT = os.path.join(os.path.dirname(__file__), '../static/img/')
STATICFILES_DIRS = (
# Put strings here, like "/home/html/static" or "C:/www/django/static".
# Always use forward slashes, even on Windows.
# Don't forget to use absolute paths, not relative paths.
os.path.join(os.path.dirname(__file__), '../static'),
)
设置.py
photo = models.ImageField(upload_to='profile_images', blank=True)
photo = forms.ImageField()
def add_product(request):
success = False
if request.method == "POST":
product_form = ProductForm(request.POST)
if product_form.is_valid():
success = True
photo = product_form.cleaned_data['photo']
category = Category.objects.get(name=product_form.cleaned_data['category'])
title = product_form.cleaned_data['title']
type= product_form.cleaned_data['type']
description = product_form.cleaned_data['description']
product = product_form.cleaned_data['product']
quantity = product_form.cleaned_data['quantity']
price = product_form.cleaned_data['price']
new_product = Product(category = category, title = title, photo = photo, product = product, quantity = quantity, price = price,type=type,description=description )
new_product.save()
new_product_form = ProductForm()
ctx2 = {'success':success, 'product_form':new_product_form}
return render_to_response('advertisement/ad.html', ctx2 , context_instance=RequestContext(request))
else:
product_form = ProductForm()
ctx = {'product_form':product_form}
return render_to_response('advertisement/ad.html', ctx , context_instance=RequestContext(request))
IMAGES_ROOT = os.path.join(os.path.dirname(__file__), '../static/img/')
STATICFILES_DIRS = (
# Put strings here, like "/home/html/static" or "C:/www/django/static".
# Always use forward slashes, even on Windows.
# Don't forget to use absolute paths, not relative paths.
os.path.join(os.path.dirname(__file__), '../static'),
)
来自
ProductForm
的视图处理将接收request.FILES
中的文件数据,这是一个字典,包含表单中每个文件字段
(图像、文件等)的键
因此,上述表单中的数据可以作为请求.FILES['photo']
访问,如果您的表单有效,那么为什么不将pprint放在photo中呢?我不明白..我必须将打印放在哪里?在photo=product\u form.cleaned\u data['photo']
pprint.pprint(photo)`下面我添加了这一行,它显示了错误“未定义全局名称'pprint'”让我们。