##// END OF EJS Templates
Working realtime & database
Working realtime & database

File last commit:

r0:550d5a042943
r0:550d5a042943
Show More
views.py
64 lines | 1.7 KiB | text/x-python | PythonLexer
# -*- coding: utf-8 -*-
from __future__ import unicode_literals
import os
import json
from datetime import datetime, timedelta
from django import forms
from django.contrib import messages
from django.utils.safestring import mark_safe
from django.shortcuts import render
import mongoengine
from px.models import PXData
host_mongo = os.environ.get('HOST_MONGO', 'localhost')
mongoengine.connect('dbpx', host=host_mongo, port=27017)
# Create your views here.
# 1680242473
def realtime_plots(queryset, plot):
data = queryset.data[plot]
plots = []
for x in data:
plots.extend(data[x])
plots.sort()
return plots[-8:]
def home(request):
return render(request, 'home.html')
def realtime(request, plot='Z'):
kwargs = {}
data = PXData.objects[0]
kwargs['figures'] = [os.path.join(data.date.strftime('%Y%m%d'), s) for s in realtime_plots(data, plot)]
kwargs['last'] = data.data['dt']
return render(request, 'realtime.html', kwargs)
def database(request, plot='Z'):
kwargs = {}
date = request.GET.get('date', None)
if date is None:
dt = datetime.today().replace(minute=0, second=0)-timedelta(hours=5)
kwargs['dt'] = dt
else:
dt = datetime.strptime(date, '%d/%m/%Y %H:%M')
kwargs['dt'] = dt
data = PXData.objects.filter(date=dt.date())
if data:
kwargs['figures'] = [os.path.join(dt.strftime('%Y%m%d'), s) for s in data[0].data[plot][str(dt.hour)]]
kwargs['dates'] = json.dumps([d.date.strftime('%d/%m/%Y') for d in PXData.objects])
return render(request, 'database.html', kwargs)
def contact(request):
return render(request, 'contact.html')