How do I call a function inside another function from different files in django and display its objects on the frontend?
Please, can anyone help me out. I am trying to call a function I defined in my views.py under food_app into another application in my project. after calling it, it works but I have a problem in reading out the function objects on my html template. it usually displays "₦<HttpResponse status_code=200, "text/html; charset=utf-8">"
But the objects prints out on the terminal after when printed.
This is the first function defined views.py #food_app
def price_in_packs(request):
total_price1 = ""
total_price2 = ""
total_price3 = ""
total_price4 = ""
total_price5 = ""
total_price6 = ""
total_price7 = ""
total_price8 = ""
total_price9 = ""
total_price10 = ""
total_price11 = ""
total_price12 = ""
price_pack_box1 = ""
price_pack_box2 = ""
price_pack_box3 = ""
price_pack_box4 = ""
price_pack_box5 = ""
price_pack_box6 = ""
price_pack_box7 = ""
price_pack_box8 = ""
price_pack_box9 = ""
price_pack_box10 = ""
price_pack_box11 = ""
price_pack_box12 = ""
food = ""
food_price = ""
#try and except is used here to avoid a null or empty value input by the user. A user can forget to input a price in pack value, which can break the code.
if request.method == "POST":
if request.POST["form"] == "form1":
try:
price_pack_box1 = int(request.POST.get("price1"))
food = Food.objects.get(pk=1)
food_price = food.food_price
total_price1 = price_pack_box1*food_price
print(total_price1)
except ValueError:
return render(request,'food_app/404.html')
elif request.POST["form"] == "form2":
try:
price_pack_box2 = int(request.POST.get("price2"))
food = Food.objects.get(pk=2)
food_price = food.food_price
total_price2 = price_pack_box2*food_price
print(total_price2)
except ValueError:
return render(request,'food_app/404.html')
elif request.POST["form"] == "form3":
try:
price_pack_box3 = int(request.POST.get("price3"))
food = Food.objects.get(pk=3)
food_price = food.food_price
total_price3 = price_pack_box3*food_price
print(total_price3)
except ValueError:
return render(request,'food_app/404.html')
elif request.POST["form"] == "form4":
try:
price_pack_box4 = int(request.POST.get("price4"))
food = Food.objects.get(pk=4)
food_price = food.food_price
total_price4 = price_pack_box4*food_price
print(total_price4)
except ValueError:
return render(request,'food_app/404.html')
elif request.POST["form"] == "form5":
try:
price_pack_box5 = int(request.POST.get("price5"))
food = Food.objects.get(pk=5)
food_price = food.food_price
total_price5 = price_pack_box5*food_price
print(total_price5)
except ValueError:
return render(request,'food_app/404.html')
elif request.POST["form"] == "form6":
try:
price_pack_box6 = int(request.POST.get("price6"))
food = Food.objects.get(pk=6)
food_price = food.food_price
total_price6 = price_pack_box6*food_price
print(total_price6)
except ValueError:
return render(request,'food_app/404.html')
elif request.POST["form"] == "form7":
try:
price_pack_box7 = int(request.POST.get("price7"))
food = Food.objects.get(pk=7)
food_price = food.food_price
total_price7 = price_pack_box7*food_price
print(total_price7)
except ValueError:
return render(request,'food_app/404.html')
elif request.POST["form"] == "form8":
try:
price_pack_box8 = int(request.POST.get("price8"))
food = Food.objects.get(pk=8)
food_price = food.food_price
total_price8 = price_pack_box8*food_price
print(total_price8)
except ValueError:
return render(request,'food_app/404.html')
elif request.POST["form"] == "form9":
try:
price_pack_box9 = int(request.POST.get("price9"))
food = Food.objects.get(pk=9)
food_price = food.food_price
total_price9 = price_pack_box9*food_price
print(total_price9)
except ValueError:
return render(request,'food_app/404.html')
elif request.POST["form"] == "form10":
try:
price_pack_box10 = int(request.POST.get("price10"))
food = Food.objects.get(pk=10)
food_price = food.food_price
total_price10 = price_pack_box10*food_price
print(total_price10)
except ValueError:
return render(request,'food_app/404.html')
elif request.POST["form"] == "form11":
try:
price_pack_box11 = int(request.POST.get("price11"))
food = Food.objects.get(pk=11)
food_price = food.food_price
total_price11 = price_pack_box11*food_price
print(total_price11)
except ValueError:
return render(request,'food_app/404.html')
elif request.POST["form"] == "form12":
try:
price_pack_box12 = int(request.POST.get("price12"))
food = Food.objects.get(pk=12)
food_price = food.food_price
total_price12 = price_pack_box12*food_price
print(total_price12)
except ValueError:
return render(request,'food_app/404.html')
#Total price represents the nummber of the number input of price in packs
#while price_in_pack_box is the amount of the amount of the product in packs
my_dict = {'new_price1':[total_price1,price_pack_box1],'new_price2':[total_price2,price_pack_box2],
'new_price3':[total_price3,price_pack_box3],'new_price4':[total_price4,price_pack_box4],
'new_price5':[total_price5,price_pack_box5],'new_price6':[total_price6,price_pack_box6],
'new_price7':[total_price7,price_pack_box7],'new_price8':[total_price8,price_pack_box8],
'new_price9':[total_price9,price_pack_box9],'new_price10':[total_price10,price_pack_box10],
'new_price11':[total_price11,price_pack_box11],'new_price12':[total_price12,price_pack_box12]}
return render(request, 'food_app/price.html',context=my_dict)
I need to use the price_in_packs function in this view views.py #payment app
def payment(request, pk):
item = ""
if request.method == "POST":
if request.POST.get("form") == "form1":
seerbit_pay = request.POST.get("ewa")
return render(request,'payments/pay.html',{'pk':pk,'all_pk':all_pk,'soup':soup_box,'price_in_pack':packs(request)})
After calling the price_in_pack key in my template view, it displace this "₦<HttpResponse status_code=200, "text/html; charset=utf-8">" but I want it to display the object instead.