def product_add(request): form = ProductForm(request.POST or None) if form.is_valid(): form.save() return HttpResponseRedirect(reverse("product:product_list")) context = {"form": form} return render(request, "form.html", context)
def post(self, request, *args, **kwargs): """ Create product if form is valid or return status code 400 and form with suggest errors. """ form = ProductForm(request.POST) if form.is_valid(): form.save() return render( request, self.__class__.TABLE_TEMPLATE, { "object_list": Product.objects.select_related("provider").all().order_by( "created_at") }, ) return render( request, self.__class__.FORM_TEMPLATE, {"form": form}, status=400, )
def post(self, request): form = ProductForm(data=request.POST, files=request.FILES) if form.is_valid(): form.save() return redirect('/manager/') else: return HttpResponse("Sai cu phap")
def update(request, id): product = Product.objects.get(id=id) form = ProductForm(request.POST, instance=product) if form.is_valid(): form.save() return redirect("/show") return render(request, 'edit.html', {'product': product})
def post(self, request): form = ProductForm(data=request.POST, files=request.FILES) form.price = request.POST["price"] if form.is_valid(): form.save() return redirect('manager:product_control') else: return HttpResponse("Sai cu phap")
def createProduct(request): form = ProductForm(data=request.POST or None, files=request.FILES or None) if request.method == "POST": if form.is_valid(): form.save() return HttpResponseRedirect('/list_edit/') return render(request, 'product_create.html', {'form': form})
def createproduct(request): product_form = ProductForm() if request.method == "POST": form = ProductForm(request.POST) if form.is_valid(): form.save() return HttpResponseRedirect(reverse('product:productlist')) return render(request, 'product/createview.html', {"form":product_form})
def add(request): if request.method == 'POST': form = ProductForm(request.POST) if form.is_valid(): form.save() return HttpResponseRedirect('/') else: form = ProductForm() return render(request, 'product/form.html', {'form': form})
def edit_product(request, id): product = get_object_or_404(Product, id=id) form = ProductForm(request.POST or None, request.FILES or None, instance=product) if form.is_valid(): form.save() return HttpResponseRedirect(reverse("product:product_list")) context = {"form": form} return render(request, "form.html", context)
def productedit(request, pk): product = Product.objects.get(id=pk) form = ProductForm(instance=product) if request.method == 'POST': form = ProductForm(request.POST, instance=product) if form.is_valid(): form.save() return redirect('product') context = {'form': form, 'product': product} return render(request, 'edit.html', context)
def post(self, request, action_id): if action_id == 1: form = ProductForm(data=request.POST, files=request.FILES) if action_id == 2: form = CategoryForm(request.POST) if form.is_valid(): form.save() return redirect('http://127.0.0.1:8000/manage/') else: return HttpResponse("Sai cu phap")
def add_view(request, *args, **kwargs): if request.method == 'POST': form = ProductForm(data=request.POST, files=request.FILES) if form.is_valid(): form = form.save(commit=False) form.company = request.user.seller_set.all().first() form.save() return redirect('seller:products') else: form = ProductForm() return render(request, 'sellers/add_product.html', {'form': form})
def add(request): if request.method == 'POST': form = ProductForm(request.POST) if form.is_valid(): form.save() return render(request, 'product/goods-list.html', {'products': Product.objects.all()}) else: pass else: form = ProductForm() content = {'form': form} return render(request, 'product/good-create.html', content)
def product_creation(request): if request != 'POST': form = ProductForm() else: # post has been filled, ready for processing form = ProductForm(request.POST, request.FILES) if form.is_valid(): form.save() context = {"form": form} return render(request, 'product/product_creation.html', context)
def product(request): if request.method == "POST": form = ProductForm(request.POST) if form.is_valid(): try: form.save() return redirect('/show') except: pass else: form = ProductForm() return render(request,'add_product.html',{'form':form})
def productCreate(request): template = 'product/productCreateUpdate.html' if request.method == 'GET': return render(request, template, {'productForm': ProductForm()}) # POST productForm = ProductForm(request.POST) if not productForm.is_valid(): return render(request, template, {'productForm': productForm}) productForm.save() messages.success(request, '產品已新增') return redirect('product:product')
def product(request): if request.method == "POST": form = ProductForm(request.POST) if form.is_valid(): try: form.save() return redirect('/show') except: pass form = ProductForm() csrfContext = RequestContext(request) return render(request, 'index_product.html', {'form': form}, csrfContext)
def add_product(request): if request.method == 'POST': product_form = ProductForm(request.POST, request.FILES) if product_form.is_valid(): product_form.save() return HttpResponseRedirect(reverse('product:add_product')) else: print(product_form.errors) else: product_form = ProductForm() return render(request, 'product/add_product.html', {'product_form': product_form})
def productUpdate(request, productId): product = get_object_or_404(Product, id=productId) template = 'product/productCreateUpdate.html' if request.method == 'GET': productForm = ProductForm(instance=product) return render(request, template, {'productForm': productForm}) # POST productForm = ProductForm(request.POST, instance=product) if not productForm.is_valid(): return render(request, template, {'productForm': productForm}) productForm.save() messages.success(request, '產品已修改') return redirect('product:productRead', productId=productId)
def productpost(request): form = ProductForm() if request.method == "POST": form = ProductForm(request.POST, request.FILES) if form.is_valid(): form.save(commit=True) return success(request) else: print("The Form Is Invalid") return render(request, 'product/postproduct.html', {'form': form})
def updateproduct(request, pk): msg = "" product = Product.objects.get(id=pk) if request.method == "POST": form = ProductForm(instance=product, data=request.POST) if form.is_valid(): form.save() return redirect("/") else: msg = form._erorrs else: form = ProductForm(instance=product) return render(request, "product/product_form.html", { "form": form, "message": msg })
def update_item(request, pk): product = get_object_or_404(Product, pk=pk) user = product.seller if not user == request.user: return redirect('index') if request.method == "POST": form = ProductForm(request.POST, instance=product) if form.is_valid(): updated_product = form.save(commit=False) updated_product.seller = request.user updated_product.save() return redirect('product', pk=updated_product.pk) else: print(request.POST) else: data = { 'name': product.name, 'price': product.price, "description": product.description, "height": product.height, "width": product.width, "depth": product.depth, "category": product.category } form = ProductForm(initial=data) return render(request, 'product/update-item.html', { 'form': form, 'product': product })
def item(request, product_id): product = get_object_or_404(Product, id=product_id) if request.method == 'GET': form = ProductForm(instance=product, provider=product.provider) url_args = request.GET.urlencode() elif request.method == 'POST': data = request.POST.copy() url_args = data.pop('url_args') form = ProductForm(instance=product, data=data) if form.is_valid(): if form.has_changed(): orig_price = product.price product = form.save() if orig_price != product.price and product.has_expired(): product.expiry = datetime("31/12/%s" % datetime.now().year, "%d/%m/%Y") product.save() info_msg(request, u"Produit modifié avec succès.") return redirect(reverse('product_index') + '?' + url_args[0]) product_type = ContentType.objects.get_for_model(Product) return render( request, 'product/item.html', { 'product': product, 'product_type': product_type.id, 'form': form, 'url_args': url_args })
def new(request): provider = None form = ProductForm() if request.method == 'GET': provider_id = request.GET.get('provider_id', None) if provider_id: provider = get_object_or_404(Provider, id = provider_id) form = ProductForm(provider = provider) elif request.user.has_perm("order.custom_view_local_provider"): provider = get_object_or_404(Provider, name = 'MAGASIN', is_local = True) form = ProductForm(provider = provider) elif request.method == 'POST': if 'provider' in request.POST and request.POST['provider']: provider = get_object_or_404(Provider, id = request.POST['provider']) form = ProductForm(provider = provider, data = request.POST) else: provider = None form = ProductForm(data = request.POST) if form.is_valid(): p = form.save() if p.provider.reseller: p.origin = p.provider.name p.provider = p.provider.reseller p.save() info_msg(request, u"Produit ajouté avec succès.") return redirect(reverse('product:list') + "?reference=%s&connector=OR" % p.reference) return render(request, 'product/new.html', { 'provider': provider, 'form': form })
def item(request, product_id): product = get_object_or_404(Product, id = product_id) form = ProductForm(instance = product, provider = product.provider) url_args = request.GET.urlencode() if request.method == 'POST': data = request.POST.copy() url_args = data.pop('url_args') form = ProductForm(instance = product, data = data) if form.is_valid(): if form.has_changed(): orig_price = product.price product = form.save() if orig_price != product.price and product.has_expired(): product.expiry = datetime.strptime("31/12/%s" % timezone.now().year, "%d/%m/%Y") product.save() info_msg(request, u"Produit modifié avec succès.") return redirect(reverse('product:list') + '?' + url_args[0]) product_type = ContentType.objects.get_for_model(Product) return render(request, 'product/item.html', { 'product': product, 'product_type': product_type.id, 'form': form, 'url_args': url_args })
def post(self, request, *args, **kwargs): category = Category.objects.all().order_by('order') a = AuctionForm(data=request.POST) p = ProductForm(data=request.POST, files=request.FILES) images = dict(request.FILES) if a.is_valid() and p.is_valid(): auction = a.save(commit=False) product = p.save(commit=False) auction.owner = request.user auction.last_bet = auction.start_price auction.next_bet = auction.last_bet + decimal.Decimal(auction.start_price / 100 * auction.increment) auction.save() product.auction = auction product.save() for i in images: ImageModel.objects.create(image=images[i][0], product=product) return redirect('profile') return render(request, self.template_name, context={ "category": category, "auctionform": a, "productform": p, })
def add_new_product(request): context = {} data = {} # if requets is post we need to store data to DB if request.method == 'POST': data = {} form = ProductForm(request.POST, request.FILES) if form.is_valid(): new_product = form.save(commit=False) if 'image_name' in request.POST: file_name = str(request.POST['image_name']) image_path = os.path.join(settings.MEDIA_ROOT, file_name) with open(image_path, 'rb') as file_data: data['file_name'] = image_path new_product.product_image.save(file_name, file_data, save=True) new_product.save() new_product.product_parts.set( form.cleaned_data.get("product_parts")) else: context['form'] = form return render(request, 'product/add_new_product.html', context) form = ProductForm() context = {'form': form, 'page_title': 'Leadstracer-add new product '} return render(request, 'product/add_new_product.html', context)
def createproduct(request): if request.method == "POST": form = ProductForm(request.POST, files=request.FILES) if form.is_valid(): form.save() msg = "product created successfully" return redirect("/") else: msg = form._errors else: form = ProductForm() msg = "" return render(request, "product/product_form.html", { "form": form, "message": msg })
def product_edit(request, id): product = Product.objects.get(id=id) if request.method == "POST": form = ProductForm(request.POST, instance=product) if form.is_valid(): form.save() return redirect("product", id=product.id) context = {} context["form"] = ProductForm(instance=product) return render( request, "product/form.html", context )
def product_create(request): context = {} if request.method == "POST": form = ProductForm(request.POST, request.FILES) if form.is_valid(): form.save() context["products"] = Product.objects.filter(avialable=True) context["message"] = "Товар был успешно добавлен" return render(request, "product/products.html", context) context["form"] = ProductForm() return render( request, "product/form.html", context )
def edit_view(request, *args, **kwargs): user = request.user pid = kwargs.get('pid') pdt = Product.objects.get(pk=pid) if pdt.company.owner != user: return redirect('seller:products') if request.method == 'POST': form = ProductForm(data=request.POST, files=request.FILES, instance=pdt) if form.is_valid(): form.save() return redirect('seller:products') else: form = ProductForm(instance=pdt) return render(request, 'sellers/add_product.html', {'form': form})
def product_edit(request , id): product = Product.objects.get(id=id) if request.user != product.user: return redirect("home") context = {} if request.method == "POST": form = ProductForm(request.POST,request.FILES, instance=product) if form.is_valid(): form.save() context["product"] = Product.objects.get(id=id) context["message"] = "Информация успешно обновлена" return redirect("product",id=product.id) context["form"] = ProductForm(instance=product) return render(request,"product/form.html", context)
def product_create(request, collection_id): collection = Collection.objects.get(id=collection_id) ChildProductFormSet = modelformset_factory(Product, form=ChildProductForm) if request.method == 'POST': product_form = ProductForm(request.POST) child_formset = ChildProductFormSet(request.POST, prefix='child') if product_form.data.has_key('has_options'): if child_formset.is_valid() and product_form.is_valid(): check = True else: check = False else: if product_form.is_valid(): check = True else: check = False if check: product = product_form.save(commit=False) product.collection = collection product.category = collection.category product.brand = collection.brand product.save() product_form.save_m2m() if product.has_options: for (counter, form) in enumerate(child_formset.forms): child = form.save(commit=False) child.parent = product child.name = product.name child.description = product.description child.brand = product.brand child.category = product.category child.has_options = True child.option_group = product.option_group if not child.price: child.price = product.price child.collection = collection child.slug = product.slug + '-' + child.option.name child.save() for gender in product.gender.all(): child.gender.add(gender) if 'add' in request.POST: return redirect('staff-product-image', product.id) else: return redirect('staff-collection', collection_id=collection_id) else: product_form = ProductForm() child_formset = ChildProductFormSet(prefix='child', queryset=Product.objects.none()) return render(request, 'staff/create-product.html', { 'collection': collection, 'product_form': product_form, 'child_formset': child_formset, })
def product_edit(request, collection_id, product_id): from django.http import HttpResponse product = get_object_or_404(Product, id=product_id) collection = Collection.objects.get(id=collection_id) children = Product.objects.filter(parent=product) if children: ChildProductFormSet = modelformset_factory(Product, form=ChildProductForm, extra=0) else: ChildProductFormSet = modelformset_factory(Product, form=ChildProductForm) product_form = ProductForm(request.POST or None, instance=product) if request.method == 'POST': child_formset = ChildProductFormSet(request.POST, prefix='child') if product_form.data.has_key('has_options'): if child_formset.is_valid() and product_form.is_valid(): check = True else: check = False else: if product_form.is_valid(): check = True else: check = False if check: product = product_form.save() if product.has_options: for (counter, form) in enumerate(child_formset.forms): child = form.save(commit=False) child.parent = product child.name = product.name child.description = product.description child.brand = product.brand child.category = product.category child.has_options = True child.option_group = product.option_group if not child.price: child.price = product.price child.collection = collection child.slug = product.slug + '-' + child.option.name child.save() child.gender.clear() for gender in product.gender.all(): child.gender.add(gender) children = children.exclude(id=child.id) children.delete() if 'add' in request.POST: return redirect('staff-product-image', product.id) else: return redirect('staff-collection', collection_id) child_formset = ChildProductFormSet(prefix='child', queryset=children) return render(request, 'staff/edit-product.html', { 'collection': collection, 'product_form': product_form, 'child_formset': child_formset, })