Я занимаюсь разработкой сайта, который использует Django для проверки цен на криптовалюту. Я хочу загрузить значение, хранящееся в файле базы данных django sqlite3 без обновления (F5), используя ajax. Что мне делать?
(Однако, если пользователь обновит страницу вручную, значение изменится. Это происходит из-за того, что значение загружено из базы данных.)
Цены на криптовалюту и другую информацию автоматически собираются сканером и сохраняются в реальном времени в db.sqlite3 в вашем Django проекте.
index. html (этот шаблон HTML является stati c его значение не изменяется в реальном времени.)
{% extends 'exchange/layout.html' %}
{% load humanize %}
{% block title %}XCoin{% endblock %}
{% block body %}
<table class="table table-condensed">
<thead>
<tr>
<th>#</th>
<th>Name</th>
<th>Price</th>
<th>Market Cap</th>
<th>Volume (24h)</th>
<th>Circulating Supply</th>
</tr>
</thead>
<tbody>
{% for coin in coins %}
<tr>
<td>{{coin.ranking}}</td>
<td>[ {{coin.abbreviation}} ] {{coin.name}}</td>
<td>{{coin.price|intcomma}}$</td>
<td>{{coin.marketcap|intcomma}}$</td>
<td>{{coin.volume|intcomma}}$</td>
<td>{{coin.circulatingsupply|intcomma}} {{coin.abbreviation}}</td>
</tr>
{% endfor %}
</tbody>
</table>
{% endblock %}
urls.py
from django.contrib import admin
from django.urls import path
from . import views
app_name = 'exchange'
urlpatterns = [
path('admin/', admin.site.urls),
path('', views.index, name='home'),
]
models.py
from django.db import models
class Coin(models.Model):
ranking = models.IntegerField() # coin ranking
abbreviation = models.CharField(max_length=10) # coin symbol
name = models.CharField(max_length=20) # coin name
price = models.FloatField() # coin price ($)
marketcap = models.IntegerField() # coin marketcap ($)
volume = models.IntegerField() # coin volume (24h)
circulatingsupply = models.IntegerField() # coin supply
def __str__(self):
return self.name
views.py
from .models import Coin
from django.shortcuts import render
from django.shortcuts import HttpResponse
def index(request):
coin = Coin.objects.all()
context = {'coins':coin}
return render(request, 'exchange/index.html', context)