Initial commit
This commit is contained in:
@@ -0,0 +1,3 @@
|
||||
from django.contrib import admin
|
||||
|
||||
# Register your models here.
|
||||
@@ -0,0 +1,5 @@
|
||||
from django.apps import AppConfig
|
||||
|
||||
|
||||
class PagesConfig(AppConfig):
|
||||
name = 'pages'
|
||||
@@ -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)),
|
||||
],
|
||||
),
|
||||
]
|
||||
@@ -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)
|
||||
@@ -0,0 +1,3 @@
|
||||
from django.test import TestCase
|
||||
|
||||
# Create your tests here.
|
||||
@@ -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),
|
||||
|
||||
]
|
||||
@@ -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)
|
||||
Reference in New Issue
Block a user