getting null instead of the refreshed value when the event is triggered in the template, getting the correct value in the terminal for example success 6
. How do I get the real value to render out instead of null, feel free to improve this question if you see anything wrong. Cheer!
I've searched a lot in the community and tried lots of things but couldn't find what's causing the issue, I hope someone can help me!
reproducible repo: https://github.com/bettstogain/reproducible_shop/tree/main/env
This is my code:
path('ajax_update/', views.ajax_update, name="ajax_update"),
view
#bagstuff is a function that sees if the user is authenticated and does get_or_create
#or is not authenticated and refers to use the cookie
def ajax_update(request):
stuff = bagstuff(request)
bag = stuff['bag']
# if_ajax returns, request.META.get('HTTP_X_REQUESTED_WITH') == 'XMLHttpRequest'
if is_ajax and request.method == "GET":
#trying to get the bag value after the event is triggered
if bag:
print("success", bag)
#trying to get the bag and put it in JsonResponse
data_attribute = request.GET.get(bag)
#print(data_attribute) -- this prints null
return JsonResponse(data_attribute, safe=False, status=200)
else:
print("failed")
context = {"bag": bag}
template:
<script>
var update_bag_url = "{% url 'store:ajax_update' %}";
</script>
javascript:
function update_bag() {
// optional: don't cache ajax to force the content to be fresh
$.ajaxSetup ({
cache: false
});
// specify loading spinner
var spinner = "<img alt='loading..' />";
$("#lil-icon-two").html(spinner).load(update_bag_url);
}
Santiago Trujillo