def shoppinglist_price_update(request, pk): shoppinglist = ShoppingList.objects.get(pk=pk) region_id = int(request.POST['region']) items = shoppinglist.items.all() type_ids = [x.type_id for x in items] fetcher = PriceFetcher(type_ids, regions=region_id) price_data = fetcher.fetch() for price in fetcher.prepare_save(price_data): Price.objects.create(**price) return redirect('lists:detail', pk=pk)