Initial commit

This commit is contained in:
Your Name
2021-09-07 23:12:03 +08:00
commit 0f5e5327d8
354 changed files with 35438 additions and 0 deletions
View File
+3
View File
@@ -0,0 +1,3 @@
from django.contrib import admin
# Register your models here.
+5
View File
@@ -0,0 +1,5 @@
from django.apps import AppConfig
class PagesConfig(AppConfig):
name = 'pages'
+23
View File
@@ -0,0 +1,23 @@
# Generated by Django 3.1.7 on 2021-06-29 16:20
from django.db import migrations, models
class Migration(migrations.Migration):
initial = True
dependencies = [
]
operations = [
migrations.CreateModel(
name='Message',
fields=[
('id', models.IntegerField(primary_key=True, serialize=False)),
('data', models.CharField(db_column='data', max_length=3000)),
('time', models.CharField(db_column='time', max_length=3000)),
('icon', models.CharField(db_column='icon', max_length=100)),
],
),
]
View File
+8
View File
@@ -0,0 +1,8 @@
from django.db import models
class Message(models.Model):
id = models.IntegerField(primary_key=True)
data = models.CharField(db_column='data', max_length=3000)
time = models.CharField(db_column='time', max_length=3000)
icon = models.CharField(db_column='icon', max_length=100)
+3
View File
@@ -0,0 +1,3 @@
from django.test import TestCase
# Create your tests here.
+10
View File
@@ -0,0 +1,10 @@
from django.conf.urls import url
from pages import views
urlpatterns = [
url("(.*\.html$)", views.out_page),
url('message', views.message),
url("upload", views.sort_load),
url("^$", views.index),
]
+97
View File
@@ -0,0 +1,97 @@
import os
import random
import time
from django.http import JsonResponse
from django.shortcuts import render
from pages.models import Message
from chart.models import PlottingLibrary
from chart import tools
path = os.getcwd()
# def tick():
# file_list = os.listdir(f"{path}/file_keep")
#
# for i in file_list:
# try:
# int(i)
# except:
# pass
#
# else:
# os.system(f"rm -r {path}/file_keep/{i}")
#
#
# scheduler = BackgroundScheduler()
# scheduler.add_job(tick, 'interval', minutes=0.5)
# scheduler.start()
# 返回随机生成的头像
def icon_create():
icon_list = ["layui-icon-heart-fill", 'layui-icon-rate-half', 'layui-icon-rate',
'layui-icon-cellphone', 'layui-icon-snowflake', 'layui-icon-read',
'layui-icon-headset', 'layui-icon-release']
return random.choice(icon_list)
# 返回前端时间
def time_f():
return time.strftime("%Y-%m-%d", time.localtime())
# 返回首页
def index(request):
return render(request, './page/index.html')
# 返回静态页面
def out_page(request, page_name):
if "Dot_Plot.html" in page_name:
return render(request, f'./chart/{page_name}')
else:
return render(request, f'./page/{page_name}', {"url": tools.url_})
# 处理留言信息
def message(request):
message_text = request.GET.get("message", None)
get_break = request.GET.get("get_break", None)
if get_break == "1":
return JsonResponse({'data': [{"icon": i.icon, 'data': i.data, 'time': i.time} for i in Message.objects.all()]})
if message_text is None or len(message_text) < 1:
message_text = "You didn't make any comments and wasted dozens of K of traffic."
db = Message(data=message_text, icon=icon_create(), time=time_f())
db.save()
return JsonResponse({"data": message_text, 'icon': icon_create(), "time": time_f()})
# 返回首页信息
def sort_load(request):
page = int(request.GET.get("page"))
sort = request.GET.get("sort", "all")
if sort == "all":
a = len(PlottingLibrary.objects.all())
pages = tools.return_pages(a)
return_data = PlottingLibrary.objects.all()[(page - 1) * 12:]
if len(return_data) >= 12:
return_data = return_data[:12]
elif sort == "Scatter":
a = len(PlottingLibrary.objects.filter(sort="scatter"))
pages = tools.return_pages(a)
return_data = PlottingLibrary.objects.filter(sort="scatter")[(page - 1) * 12:]
if len(return_data) >= 12:
return_data = return_data[:12]
data = {"pages": pages, 'data': [{"name": i.name, "url": i.url, "show_chart": i.index_img}
for i in return_data]}
return JsonResponse(data)