Django community: RSS
This page, updated regularly, aggregates Django Q&A from the Django community.
-
Django testing abstract models - table relation does not exist
I'm trying to test an abstract model. I've created a models.py in my tests directory where I'm inheriting from the abstract base classes. In my tests I'm importing from tests/models.py but for some reason I'm getting an error that the table does not exist despite this working perfectly fine in other projects. When running python manage.py test I get the following error: psycopg2.errors.UndefinedTable: relation "address_address" does not exist LINE 1: ...postal_code", "address_address"."country_id" FROM "address_a... Here's my app's file structure: myapp/ tests/ __init__.py models.py test_models.py __init__.py admin.py apps.py models.py Here is my tests/models.py: from ..models import ( AbstractAddress, AbstractBillingAddress, AbstractShippingAddress, AbstractBillingShippingAddresses, ) class Address(AbstractAddress): pass class BillingAddress(AbstractBillingAddress): pass class ShippingAddress(AbstractShippingAddress): pass class BillingShippingAddresses(AbstractBillingShippingAddresses): pass Here's an example of one of the abstract models: class AbstractAddress(AddressMixin, models.Model): line_1 = models.CharField(_('line 1'), max_length=255, blank=True) line_2 = models.CharField(_('line 2'), max_length=255, blank=True) city = models.CharField(_('city'), max_length=255, blank=True) province = models.CharField(_('state'), max_length=255, blank=True) state = models.CharField(_('zip/postal code'), max_length=64, blank=True) country = models.ForeignKey( 'address.Country', blank=True, null=True, on_delete=models.PROTECT, related_name='%(class)s_country', verbose_name=_('country') ) class Meta: abstract = True I've tried adding app_label = 'address' to the my test models but I'm still getting the same error. The only thing I can think of is that the test models are inheriting … -
How to add new button in django admin panel?
I want to add button next to "Delete" button. How can I do that? -
I got the from date and to date from the user. I want to return the Sold Product's price and its count in the basis of Daily sold order. how?
models.Order.objects.filter(purchasedate__range=[from_date, to_date]) today_total = 0 quant = 0 for values in daterangeorder: today_total += values.price quant += values.quantity return response.Response({ "from_date": from_date, "to_date": to_date, "Amount Sold": str(today_total), "Count": str(quant) }) OutPut Comming like this:- { "from_date": "2021-11-19", "to_date": "2021-11-23", "Amount Sold": "27000", "Count": "9" } I want like this (day by day sold products count):- { date: “'2021-10-20”, count: 20, total_price_sold: 5000.00 }, { date: “'2021-10-21”, count: 4, total_price_sold: 300.00 } -
Data added to request from Django ModelViewSet is not being reflected in serializer
I am trying to load data to a model using update_or_create method. For that I added two few fields to the request.data on the fly. But I am not getting those fields in create method in serializer views.py class TestMemberView(ModelViewSet): queryset = TestMembers.objects.order_by('-date_time_viewed') serializer_class = TestMemberSerializer def create(self, request, *args, **kwargs): request.data["user_id"] = 123 request.data['user_name'] = test_user return super().create(request, *args, **kwargs) serializer.py class TestMemberSerializer(serializers.ModelSerializer): view_time = serializers.DateTimeField(format='%Y-%m-%d %H:%M:%S') class Meta: model = TestMembers fields = ("member_first_name", "member_last_name", "view_time", "user_name","user_id",) def create(self, validated_date): user_id = validated_date.pop('user_id') member, _ = TestMembers.objects.update_or_create(user_id=user_id, defaults={ "view_time": timezone.now()}, **validated_date) return member request body: { "member_first_name": "test_name", "member_last_name": "test_name" } error: { "errors": [ { "error_level": "ERROR", "system_error": null, "reason": null, "user_error": { "user_name": [ "This field is required." ], "view_time": [ "This field is required." ] } } ] } Please help me to resolve this. How can I get those fields in serializer which I added in the view. -
JavaScript: Leaflet bindpopup use checkbox. Currently clears each time the popup is closed
I use below code to generate a leafletmap with some additional fields, from a Django backend. In the browser however, the checkbox generated, "unchecks", each time you close the popup. How do I get to retain it's value? <script> var mymap = L.map('competition_map').setView([{{ lat }}, {{ lon }}], 5); var plant = L.marker([{{ plant.lat }}, {{ plant.lon }}]).addTo(mymap); var customer = L.marker([{{ customer.lat }}, {{ customer.lon }}]).addTo(mymap); plant.bindPopup("<b>{{ plant }}</b>").openPopup(); customer.bindPopup("<b>{{ customer }}</b>"); //Through iteration add all Competitors: {% for c in competitor %} var competitor_{{c.id}} = L.marker([{{ c.lat }}, {{ c.lon }}]).addTo(mymap); competitor_{{c.id}}.bindPopup("<input type=\"checkbox\" id=\"{{ c.id }}\" name=\"{{ c.id }}\" onClick=\"competitorAdd('{{ c.id }}','{{ c.location_name}}','{{ c.city }}', '{{ c.country }}')\"><strong>{{ c }}</strong>"); {% endfor %} var competitors = L.layerGroup([ {% for c in competitor %} competitor_{{c.id}}, {% endfor %}]); //https://leafletjs.com/examples/layers-control/example.html to add layers for Grey and Streets. var baseLayers = { }; var overlays = { "Competitors": competitors }; L.tileLayer('https://api.mapbox.com/styles/v1/{id}/tiles/{z}/{x}/{y}?access_token=pk.eyJ1IjoibWFwYm94IiwiYSI6ImNpejY4NXVycTA2emYycXBndHRqcmZ3N3gifQ.rJcFIG214AriISLbB6B5aw', { maxZoom: 18, attribution: 'Map data &copy; <a href="https://www.openstreetmap.org/copyright">OpenStreetMap</a> contributors, ' + 'Imagery © <a href="https://www.mapbox.com/">Mapbox</a>', id: 'mapbox/streets-v11', tileSize: 512, zoomOffset: -1 }).addTo(mymap); L.control.layers(baseLayers,overlays).addTo(mymap); </script> -
how to customize User model in django
I want to add a field to User models Django example(in models.py: from django.contrib.auth.models import User #I want to add code here that customizes the user model fields how can I do this? -
Pyinstaller and Django any collect_submodules failed to import
This problem is new to me. When using extra libraries, they cannot be incorporated into the pyinstaller build. As an example I tried using --hidden-import, --collect-submodules and added a hook-djoser.urls.py file to try to solve one of the other problems. In this file I did this. hook-djoser.urls.py in Lib\site-packages\PyInstaller\hooks from PyInstaller.utils.hooks import collect_submodules hiddenimports = collect_submodules('djoser.urls') # pyinstaller --noconfirm --onedir --console --name "royalback" "C:/Users/Shudf/royalback/manage.py" And I can't make it work. Would anyone be available to help? Thanks raise ImproperlyConfigured( django.core.exceptions.ImproperlyConfigured: Requested setting REST_FRAMEWORK, but settings are not configured. You must either define the environment variable DJANGO_SETTINGS_MODULE or call settings.configure() before accessing settings. collect_submodules: failed to import 'djoser.urls'! -
How to return related value from database after click function by ajax in django?
html <div> {{ productform.vendorid|as_crispy_field }}<a id="vendor_id_search" class="btn btn-info">search</a></br> <div style="display:none;" id="show_vendorname">hjkh</div><br> </div> <script src="https://ajax.googleapis.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script> <script> $("#vendor_id_search").click(function (event) { event.preventDefault(); var vendor_id = $("#id_vendorid").val(); $.ajax({ url: '/ajax/find_vendorname/', method: 'GET', data: { 'vendor_id': vendor_id }, dataType: 'json', success: function (data) { $("#show_vendorname").show(data) } }); }); views.py #vendor_name_find_ajax def find_vendorname(request): if request.is_ajax(): vendorid = request.GET.get('vendor_id', None) username = CustomUser.objects.filter(first_name=vendorid) return username I want to display the related name for that vendorid after the user typed the vendorid field and once clicked the button, the related name should be displayed on that particular div. Here, I have made a mistake and don't know to get that value. please, someone, do needful. -
Django foreign key constraint on drop even thou on_delete=CASCADE
I can't see what's wrong with this, class Agenda(models.Model): ... class AgendaResource(PolymorphicModel): agenda = models.ForeignKey( Agenda, related_name="resources", on_delete=models.CASCADE ) comment = models.TextField(null=True) class PreemptiveMeasureResource(AgendaResource): resource = models.ForeignKey( PreemptiveMeasure, on_delete=models.SET_NULL, null=True ) ... When I try to delete an agenda, i.e. Agenda.objects.get(pk=2).delete() I get this problem: update or delete on table "school_health_agendaresource" violates foreign key constraint "school_health_preemp_agendaresource_ptr_i_222e2e2c_fk_school_he" on table "school_health_preemptivemeasureresource" DETAIL: Key (id)=(2) is still referenced from table "school_health_preemptivemeasureresource" What is it I don't understand? I'm guessing it's something to do with the inheritance? -
How can I edit the content in the home page?
Working on a small project using Django 3.2 and I just added an edit button to the page, so the user can edit the content. I did that with forms and views by rendering the user to another page and edit the content, but I was thinking is there a way possible to edit the content by not rendering user to another page? For a better understanding of what I have done so far, will show the code below: models.py from django.db import models from django.contrib.auth.models import User from django.db.models.deletion import CASCADE # Create your models here. class todo(models.Model): content = models.CharField(max_length=200) created = models.DateTimeField(auto_now_add=True) name = models.CharField(max_length=200, null=True) email = models.CharField(max_length=200, null=True) user = models.ForeignKey(User, on_delete=CASCADE, null=True) def __str__(self): return self.content forms.py class UpdateContent(forms.ModelForm): class Meta: model = todo fields = ['content']' views.py contents = todo.objects.get(id=pk) form = UpdateContent(instance=contents) if request.method == 'POST': form = UpdateContent(request.POST, instance=contents) if form.is_valid(): form.save() return redirect('/') context = {'form': form} return render(request, 'html/update.html', context) home.html table class="table table-dark table-hover table-bordered"> <thead> <tr id="tr-table"> <th id="text-left">#</th> <th id="text-center">ITEMS</th> <th id="text-right"><i class="material-icons">&#xe872;</i></th> <th id="text-right2"><i id="edit" class="material-icons">&#xe3c9;</i></th> </tr> </thead> <tbody> {% for all_item in all_items%} <tr> <th id="row" scope="row"> {{ forloop.counter }} </th> <td id="content">{{ all_item.content … -
Change the Django Admin App List and Restrict Users from accessing models
I am trying to create a system in django admin model where admin can see all apps in django admin index. Staff can see only restricted apps. I was able to change the app list index for different roles, but for restricted user they can access directly through url. model.py class User(AbstractBaseUser): id = models.UUIDField(primary_key=True, default=uuid.uuid4, editable=False) email = models.EmailField( verbose_name='email address', max_length=255, unique=True, ) first_name = models.CharField(('first name'), max_length=30, null=True) last_name = models.CharField(('last name'), max_length=30, null=True) date_of_birth = models.DateField(null=True) date_joined = models.DateTimeField(('date joined'), auto_now_add=True) # avatar = models.ImageField(upload_to='avatars/', null=True, blank=True) phone = PhoneNumberField(null=True) country = CountryField(null=True) is_active = models.BooleanField(default=True) is_admin = models.BooleanField(default=False) staff = models.BooleanField(default=False) is_consumer = models.BooleanField(default=True) # premium_referral = models.CharField(('Premium Referral Code'), max_length=30, null=True,blank=True, unique=True) objects = UserManager() USERNAME_FIELD = 'email' REQUIRED_FIELDS = [] def __str__(self): return self.email def has_perm(self, perm, obj=None): "Does the user have a specific permission?" # Simplest possible answer: Yes, always return True def has_module_perms(self, app_label): "Does the user have permissions to view the app `app_label`?" # Simplest possible answer: Yes, always return True def get_full_name(self): ''' Returns the first_name plus the last_name, with a space in between. ''' full_name = '%s %s' % (self.first_name, self.last_name) return full_name.strip() def get_short_name(self): ''' Returns the … -
How to handle high response time
There are two different services. One service -Django is getting the request from the front-end and then calling an API in the other service -Flask. But the response time of the Flask service is high and if the user navigates to another page that request will be canceled. Should it be a background task or a pub/sub pattern? If so, how to do it in the background and then tell the user here is your last result? -
HTTP Redirects Preventing Twilio From Sending Digits Parameter
I created a Django app which uses if/else statements in multiple views. The else statements contain response.redirect("/previous_view"). If the else statement is ran it generates 3XX HTTP codes and causes Twilio not to include the Digits parameter in the POST body which causes my "if" statements to fail. How do I fix this? Twilio is a well-behaved HTTP client, so when it receives an HTTP 301 or 302 redirect it will follow it to the specified URL. However, on the subsequent request the original parameters are not included. Occasionally you may see parameters such as Digits or RecordingUrl not arriving where you expect them. In this case, check to make sure the URL is not returning a redirect. As an example, when a request is made to the action URL, a Digits parameter is included in the POST request. If the action URL redirects to another URL, Twilio will follow the redirect and issue a GET request to the specified URL. This GET request will include the standard set of parameters included with every Twilio request, but will not include the additional Digits parameter. Common situations that may return unexpected redirects are: A server that automatically redirects all HTTP requests … -
Should I use AWS for my Redis Broker or Heroku (Django app using Celery)?
I'm a very beginner dev and I'm a bit confuse. Here's my situation: I have a Django web app running on a AWS EC2 server. I have a specific view function that renders results using Spotify API and some results take 30 seconds to be rendered. I've heard that Celery could help me create a loading bar system to let the clients know how the loading is going. I have to use a message broker and Redis seems to be a good one. All the tutorials I saw are using Heroku as a host, but I'm already using AWS. I didn't find any resources speaking about AWS + Redis in the case where Redis is used as a Broker with Celery in Django, but I know that Redis + AWS is something common for cache. Can I use AWS for this purpose? If yes, is it worth it compares to Heroku (which seems very simple)? Btw, cache seems to be a good solution for my long loading issue, so I might also use Redis for cache handling. -
multiple contexts in single html with Listview
I have 4 types of tickets to display on my dashboard Open,accept,complete and closed i have written the below template view to display all the contexts with one single view how do i write my html file in one single html that has same headers for all the data but differes in the table data i have implemented one but thats not working showing closed tickets in all the urls for open,accepted,completed etc or suggest me whether i have to change something within view Views.py class DeveloperTicketView(ListView): template_name = 'app/ticket_view.html' def get_context_data(self, **kwargs): context = super(DeveloperTicketView,self).get_context_data(**kwargs) context['open_tickets'] = Ticket.objects.filter(status = 'Opened') context['accepted_tickets'] = Ticket.objects.filter(status = 'Accepted',accepted_by = self.request.user) context['completed_tickets'] = Ticket.objects.filter(status = 'Completed',accepted_by = self.request.user) context['closed_tickets'] = Ticket.objects.filter(status = 'Closed',accepted_by = self.request.user) return context ticket_view.html {% extends 'app/base.html' %} {% block body %} <table class="table table-bordered"> <thead> <tr> <th>ID</th> <th>Status</th> <th>Created</th> <th>Title</th> <th>Description</th> </tr> </thead> <tbody> {% for ticket in open_tickets %} <tr> <td><a href="">{{ ticket.id }}</a></td> <td>{{ ticket.status }}</td> <td>{{ ticket.created_by }}</td> <td>{{ ticket.ticket_title }}</td> <td>{{ ticket.ticket_description }}</td> <td><a href="{% url 'accept_tickets' pk=ticket.id %}">Accept</a> </tr> {% endfor %} </tbody></table> <tbody> {% for ticket in accepted_tickets %} <tr> <td><a href="">{{ ticket.id }}</a></td> <td>{{ ticket.status }}</td> <td>{{ ticket.created_by }}</td> <td>{{ ticket.ticket_title … -
Aggregation using relations and __last in Django
I need to find out how to filter the amount of new customers in a specific store, filtered by days. I tried a few aggregations, but none seemed to work. See code below # query all orders in a specific store by day (simplified) orders = Order.objects.filter(created_at_gte=today, created_at_lt=tomorrow, store=store) # filter all unique customers customers = [] for order in orders: if not order.customer in customers: customers.append(order.customer) # iterate all customers, looking for the oldest order for each one in that store and count as a new client if this oldest order is between the dates being looked up new_customers = 0 for customer in customers: oldest_order = customer.orders.filter(store=store).prefetch_related('store').last() is_new = (tomorrow > oldest_order.created_at > today) if is_new: new_customers += 1 print(new_customers) However, this code takes too long due to the iteration in: oldest_order = customer.orders.filter(store=store).prefetch_related('store').last() I believe something like the below would work, but "__last" doesn´t work here. Order.objects.filter(store=store, created_at__gte=today, created_at__lt=tomorrow).annotate(Count('customer__orders__last', distinct=True)) Thanks! -
How to display/see the default values in Admin for translated fields using Django's modeltranslation
I'm trying to translate some models in an existing project, and I'm learning how to do that using the modeltranslate extension. To experiment, I've added Spanish as an additional language to English and set English as a default in the settings.py: INSTALLED_APPS = [ ... 'modeltranslation', 'django.contrib.admin', 'debug_toolbar' ... ] gettext = lambda s: s LANGUAGES = ( ('en', gettext('English')), ('es', gettext('Spanish')), ) MODELTRANSLATION_DEFAULT_LANGUAGE = 'en' MODELTRANSLATION_PREPOPULATE_LANGUAGE = 'en' MODELTRANSLATION_AUTO_POPULATE = True The model: class Equipment(models.Model): name = models.CharField(max_length=300) def __str__(self): return self.name admin.py: class EquipmentAdmin(TranslationAdmin): ordering = ('name',) translation.py: @register(Equipment) class EquipmentTranslationOptions(TranslationOptions): fields = ('name',) When trying to edit an Equipment object now in the dashboard, I see two empty text fields with the following names: But the original name field and its value are not shown. Even in the model's table now there are no names displayed at all as can be seen here: Questions: How can I see the original value of these translated fields? How do I keep seeing Equipment names in the overall model's view (the second screenshot)? -
How to add status to google registered accounts?
I have a registration with 2 categories of users. Before filling in the fields, I have to choose which category I want. If you fill in the fields (email, username, password, etc.) it is saved in the database all the information (even the status). If I choose a certain category of user and I want to register with the account Google, the account is registered but nothing is added to the status. The button that directs me to register looks like this: <a class="btn btn-primary" name = "status" href="{% url 'registerClient' %}" role="button" value = "Client">Client</a> Google registration button: <a href="{% provider_login_url 'google' %}" class="btn float-right login_btn" name='status' value= "Client" type = 'submit'>Login With Google</a> I also tried such a button: <button class="btn float-right login_btn" name='status' type="submit" value='Client'><i class="fas fa-user-plus"></i> Client </button> I also tried after registering with my google account to choose the status again (pressing a button depending on my choice), but nothing is saved in the database. in column status. Note that I use allauth (I installed everything and set it up properly). The only problem is that the status is not saved in db (and I really want that). Any ideas on how I could save … -
How can I translate DJANGO datatables?
For example, I have this footer menu that needs to be translated: -
How to detect that django is being called with "manage"
I have a django codebase, and on startup in apps.py I do some database operations. However, I need to not perform this if django has been started with the "manage" option. How can I detect this within apps.py? -
My app is not showing in Django admin panel
I have problem with Django admin panel. I have two apps: 'users' and 'advertisements'. App 'users' was installed before app 'advertisements'. Both apps are included in 'INSTALLED_APPS', but in admin panel showing only app 'users'. What problem can it be? Thanks a lot. INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'phonenumber_field', 'users.apps.UsersConfig', 'advertisements.apps.AdvertisementsConfig', ] advertisementes/apps.py from django.apps import AppConfig class AdvertisementsConfig(AppConfig): default_auto_field = 'django.db.models.BigAutoField' name = 'advertisements' advertisements/admin.py from django.contrib import admin from .models import * class AdvertisingSpaceAdmin(admin.ModelAdmin): list_display = ('id', 'title', 'description', 'slug', 'data', 'user') admin.site.register(AdvertisingSpace, AdvertisingSpaceAdmin) -
How to get value from Django view into Ajax success function
I have a django application where a user can upload a file on form submit. When the file is uploaded the program will get the column names from the csv file and display that in the Django Template This is my views def handle_new_file(request): if (request.method == 'POST'): form = NewFileForm(request.POST, request.FILES) if form.is_valid(): csv_file = request.FILES['csv_file'] fs = FileSystemStorage() file_name = fs.save(csv_file.name, csv_file) file_url = f"./media/file_uploads/{file_name}" print(file_name) print(file_url) cols = get_column_names(file_url) form.save() return HttpResponse(cols) While the above view is called successfully on form submit, I am not able to pass this cols data back to the template. Here is my Ajax code function upload(event) { event.preventDefault(); var data = new FormData($('form').get(0)); $.ajax({ url: $(this).attr('action'), type: $(this).attr('method'), data: data, cache: false, processData: false, contentType: false, success: function (data) { alert(data); } }); return false; } $(function () { $('#new_form').submit(upload); }); What am I doing wrong? -
How to patch (or mock) Django’s ImageField form field’s properties?
I have a model which includes an ImageField (lets call it my_project.models.Profile) and a corresponding form (my_project.forms.ProfileForm). Let us say the name of the model’s field is picture. I am writing tests for the form and need to test the handling of the content_type property of the form's ImageField file underlying object, by my own project. For the life of me, I cannot work out where I would patch this property, to test the different scenarios. What I figured out: django.forms.fields.ImageField has a method to_python which transforms the uploaded binary data into an actual image file (https://github.com/django/django/blob/aec71aaa5b029640ce066fe5dc34f7a0050d50b2/django/forms/fields.py#L621). It uses PIL.Image to do so. Once the image is successfully opened by Pillow, the file object to be returned by to_python is assigned the content_type property, taken out of the PIL.Image.MIME dictionary (https://github.com/django/django/blob/aec71aaa5b029640ce066fe5dc34f7a0050d50b2/django/forms/fields.py#L653). What would be the correct path for mock.patch? -
Printing matplot graph in django?
Views.py:- from django.shortcuts import render, HttpResponse from tweetanalysis import tweety import matplotlib.pyplot as plt import pandas as pd import base64 from io import BytesIO # Create your views here. def index(request): return render(request, 'index-search.html') def result(request): if request.method == 'POST': query = request.POST.get('hashtage') df = tweety.Analyzer(query) plt.figure(figsize=(8, 6)) for i in range(0, df.shape[0]): plt.scatter(df.loc[i, 'Polarity'], df.loc[i, 'Subjectivity'], color='Blue') plt.title('Sentiment Analysis') plt.xlabel('Polarity') plt.ylabel('Subjectivity') buffer = BytesIO() plt.savefig(buffer, format='png') buffer.seek(0) image_png = buffer.getvalue() ans1 = base64.b64encode(image_png) ans1 = ans1.decode('utf-8') buffer.close() plt.title('Sentiment Analysis') plt.xlabel('Polarity') plt.ylabel('Subjectivity') df['Analysis'].value_counts().plot(kind='bar') buffer = BytesIO() plt.savefig(buffer, format='png') buffer.seek(0) image_png = buffer.getvalue() ans2 = base64.b64encode(image_png) ans2 = ans2.decode('utf-8') buffer.close() return render(request, 'result.html', {'chart': ans1, 'plot': ans2}) else: return HttpResponse("Error!") result.html:- {% extends 'base.html' %} {% block content %} {% if chart %} <img src="data:image/png;base64, {{chart|safe}}" /> {% endif %} <br /> {% if plot %} <img src="data:image/png;base64, {{plot|safe}}" /> {% endif %} {% endblock %} here df in dataframe. I am making a tweet sentiment analysis web app For that I want to print my matplot graphs in frontend as a result in django but error arises name 'posts' is not defined. Here in my code my sentiment analysis code return dataframe contains tweets polarity subjectivity. I want to show … -
Django looping through items not showing
Hi I am looping through items being passed through the context but nothing is showing. This is what I am passing: {"error":[],"result":{"USDT":"60000.00000000","CHZ":"13773.0349000000","ZRX":"0.0000000000","ZUSD":"67787.8285","DOT":"0.0000000000","COMP":"0.0000034600","ENJ":"257.6815000000","ADA":"2473.80445621","XXDG":"17006.92601155","ALGO":"32063.69514500","XXBT":"0.0000012880","SUSHI":"172.4585500000","SOL":"1133.3543869800","DASH":"0.5104491200","LINK":"144.2407000000","ATOM":"151.26763831","XXLM":"6926.27220000","XXRP":"0.00000000","XETH":"14.5877343640","TRX":"923.80015900","KNC":"0.0000000000","BAL":"0.0000000000","XLTC":"11.4923900000","KSM":"24.7142610000","SC":"0.0000000200","OCEAN":"652.6077000000","MATIC":"1838.9295772000","AAVE":"83.6218990800","ZGBP":"30622.0790","XZEC":"0.0000073100"}} And inside my template I have this: {% for k, v in api_reply.items %} <tr> <td>{{ k }}</td> <td>{{ v }}</td> </tr> {% endfor %} I have no errors showing but it is not displaying, any help would be great thank you.