def import_ws_product_detail(re_notice): msg = '' success_ids = [] for j in re_notice: p = Product.objects.filter(choies_sku=re_notice[j]['model']).first() if p: continue pass else: try: product = Product() product.category_id = re_notice[j]['category'] product.name = re_notice[j]['name'] product.cn_name = re_notice[j]['cn_name'] product.cost = re_notice[j]['cost'] product.manager_id = 1 product.choies_sku = re_notice[j]['model'] product.weight = re_notice[j]['weight'] product.description = re_notice[j]['size'] product.choies_supplier_name = re_notice[j]['supplier_name'] product.choies_site_url = re_notice[j]['site_url'] product.price = re_notice[j]['other'] product.save() success_ids.append(product.id) supplier = Supplier.objects.filter( deleted=False, name=re_notice[j]['supplier_name']).first() if not supplier: supplier = Supplier.objects.create( name=re_notice[j]['supplier_name']) except Exception, e: msg += "失败创建product:%s%s%s |" % ( re_notice[j]['model'], re_notice[j]['category'], str(e))
def add_view(self, request): # form = ProductForm() # context = { # 'form': form, # } if request.POST: # form = ProductForm(request.POST) instance2 = Product() instance2.title = request.POST.get('title') instance2.model = request.POST.get('model') instance2.category_id = request.POST.get('category_id') instance2.ownername = request.POST.get('ownername') current_user = request.user instance2.user_id = request.user.id instance2.charge_perhour = request.POST.get('charge_perhour') instance2.charge_perday = request.POST.get('charge_perday') instance2.charge_perweek = request.POST.get('charge_perweek') instance2.is_deleted = 'y' instance2.is_active = 'y' instance2.i_by = request.user.id instance2.u_by = request.user.id # context = { # 'form': form, # } if request.POST.get('cont'): return HttpResponseRedirect(request.META.get('HTTP_REFERER')) else: return redirect('/admin/product/product/') return render(request, 'admin/product/productadd.html')
def products_new(request): if request.POST: form = UserProductForm(request.POST, request.FILES) if form.is_valid(): user = request.user data = Product() data.user_id = user.id data.category_id = request.POST.get('category') data.title = form.cleaned_data['title'] data.keywords = form.cleaned_data['keywords'] data.description = form.cleaned_data['description'] data.image = form.cleaned_data['image'] data.marka = form.cleaned_data['marka'] data.model = form.cleaned_data['model'] data.renk = form.cleaned_data['renk'] data.year = form.cleaned_data['year'] data.kilometre = form.cleaned_data['kilometre'] data.vites = form.cleaned_data['vites'] data.durum = form.cleaned_data['durum'] data.price = form.cleaned_data['price'] data.amount = form.cleaned_data['amount'] data.detail = form.cleaned_data['detail'] data.slug = form.cleaned_data['slug'] data.status = 'Evet' data.save() messages.success(request, 'Ürününz Eklendi. <a href="/product/' + str(data.id) + '/' + str(data.slug) + '">Ürüne git >></a>', extra_tags='safe') return HttpResponseRedirect('/user/products') else: messages.error( request, 'Lütfen hatalı alanları düzeltiniz <br>' + str(form.errors)) return HttpResponseRedirect('/user/products/new') else: form = UserProductForm() user = request.user current_user = UserProfile.objects.get(user_id=user.id) context = { 'profile': current_user, 'form': form, } return render(request, 'user_products_new.html', context)
def handle(self, *args, **options): with open('electronic_products_data.csv') as csv_file: csv_reader = csv.reader(csv_file, delimiter=',') next(csv_reader) for row in csv_reader: price = row[1] brand = row[12] image_urls = row[17] name = row[21] category = row[22] stock = random.randint(5, 50) product = Product(name=name, slug='{}-{}'.format(slugify(name), time.time())) product.price = price product.brand = brand product.image_urls = image_urls category = ProductCategory(name=category, slug='{}-{}'.format(slugify(name), time.time())) category.save() product.category_id = category.id product.stock = stock product.available = True product.save() self.stdout.write(self.style.SUCCESS('Successfully finished adding data'))