def put(self, p_id): obj = Product.objects(id=p_id).get() if not request.json: if request.files: obj.update(**{'img': request.files['img'].read()}) data = json.loads(request.form['request']) if data.get('category'): category = data.pop('category') data['category'] = Category.objects(id=(category['id'])).get() obj.update(**data) else: if request.json.get('category'): category = request.json.pop('category') request.json['category'] = Category.objects( id=(category['id'])).get() obj.update(**request.json) return ProductScheme().dump(obj.reload())
def category_seeder(): categories = ['VIDEO GAMES', 'MOVIE', 'MUSIC'] for category in categories: category_dict = { 'title': category, 'description': lorem.sentence() } Category(**category_dict).save() sub_categories = [{'VIDEO GAMES': 'PC'}, {'VIDEO GAMES': 'XBox'}, {'VIDEO GAMES': 'PlayStation'}] for i in sub_categories: for k, v in i.items(): subcategory_dict = { 'title': v, 'description': lorem.sentence() } subcategory = Category(**subcategory_dict).save() Category.objects(title=k).get().add_subcategory(subcategory) sub_category = { 'title': 'Action', 'description': lorem.sentence() } subsub_c = Category(**sub_category).save() Category.objects(title='PC').get().add_subcategory(subsub_c)
def product_seeder(amount): games_names = ['DOOM', 'DIABLO', 'DOTA', 'GTA', 'Rust', 'Grad', 'Need For Speed', 'The legend of Zelda', 'Half-Life', 'BioShock', 'The Witcher', 'Portal', 'Tetris', 'Mario', 'Halo'] movies_names = ['Hunters of the Forest', 'Girl in pink', 'Wolf and Bear forest friends', 'Some movie', 'King' 'Queen of the mexico', 'Green Land', 'Rome The Empire', 'Yakudza', 'Ice Cold', 'The Beast'] music = ['AppleMusic subscribe'] p_dict = { 'Action': games_names, 'MOVIE': movies_names, 'MUSIC': music } for _ in range(amount): price = randint(0, 100) category = choice(list(p_dict.keys())) product_dict = { 'title': choice(p_dict[category]), 'description': lorem.sentence(), 'price': price, 'new_price': price // 2, 'is_discount': choice([True, False]), 'category': Category.objects(title=category).get(), } product = Product(**product_dict) product.save()
def post(self, id=None): if not id: instance = Category(**request.json).save() return CategorySchema().dump(instance) category = Category.objects(id=id).get() return CategorySchema().dump(category)
def delete(self, c_id): obj = Category.objects(id=c_id).get() if obj.parent: return {'ERROR': 'First delete child'} obj.delete() return {c_id: 'DELETED'}
def post(self, c_id=None): if c_id: category = Category.objects(id=c_id).get() sub_category = Category(**request.json).save() category.add_subcategory(sub_category) return CategoryScheme().dump(sub_category) obj = Category(**request.json) obj.save() return CategoryScheme().dump(obj)
def post(self): if not request.json: data = json.loads(request.form['request']) if request.files: data['img'] = request.files['img'].read() if data.get('category'): category = data.pop('category') data['category'] = Category.objects(id=(category['id'])).get() obj = Product(**data) else: category = request.json.pop('category') request.json['category'] = Category.objects( id=(category['id'])).get() obj = Product(**request.json) obj.save() return ProductScheme().dump(obj)
def put(self, c_id): obj = Category.objects(id=c_id).get() obj.update(**request.json) return CategoryScheme().dump(obj.reload())
def get(self, c_id=None): if c_id: return CategoryScheme().dump(Category.objects(id=c_id).get()) return CategoryScheme().dump(Category.objects, many=True)
Texts, Properties, Category, Product, ) beginning_kb = { 'news': 'Последние новости', 'products': 'Продукты', 'sales': 'Товар со скидкой', 'about': 'Информация о магазине', 'basket': 'Корзина' } category = Category.objects() category_kb = [] for i in category: category_kb.append(i.title) class ReplyKB(ReplyKeyboardMarkup): def __init__(self, one_time_keyboard=True, resize_keyboard=True, row_width=3): super().__init__(one_time_keyboard=one_time_keyboard, resize_keyboard=resize_keyboard, row_width=row_width) def generate_kb(self, *args): ''' :param args: Button names :return: New kb
def get(self, id=None): if not id: return CategorySchema().dump(Category.objects, many=True) return CategorySchema().dump(Category.objects(id=id).get())
def delete(self, id): CategorySchema().dump(Category.objects(id=id).delete()) return jsonify(**{id: 'deleted'})