def list_tags(request): logInfo(request) tags = Tag.objects.order_by("-id") result = [] for tag in tags: item = model_to_dict(tag) item["createdAt"] = tag.createdAt.strftime("%Y-%m-%d %H:%M:%S") result.append(item) return HttpResponse(json.dumps({"status": "OK", "result": result}))
def list_articles(request): logInfo(request) offset = int(request.GET["offset"]) limit = int(request.GET['limit']) # 获取第几页,返回第(pageNum-1)*10-pageNum*10篇文章 result = [] for article in Article.objects.order_by("-id")[offset:offset+limit]: # for article in Article.objects.order_by("-id"): item = model_to_dict(article) item["createdAt"] = article.createdAt.strftime("%Y-%m-%d %H:%M:%S") item["tags"] = model_to_dict(article.tags) result.append(item) return HttpResponse(json.dumps({"status": "OK", "result": result}))
def del_tag(request): logInfo(request) id = request.GET["id"] try: Tag.objects.get(id=id).delete() return HttpResponse(json.dumps({"status": "OK"})) except: return HttpResponse( json.dumps({ "status": "ERROR", "message": "Tag ID有误或数据库连接异常" }))
def list_log(request): logInfo(request) timestamp = time.strftime("log_%Y_%m_%d.log") logfile = os.path.join(log_path, timestamp) result = [] if not os.path.exists(log_path): os.makedirs(log_path) if not os.path.exists(logfile): f = open(logfile, "a+") f.close() with open(logfile, "r+") as f: for line in f.readlines(): result.append(line) return HttpResponse(json.dumps({"status": "OK", "result": result}))
def new_article(request): logInfo(request) title = request.POST['title'] # 标题 author = request.POST['author'] # 作者 content = request.POST['content'] # 内容 tagId = request.POST['tagId'] # 标签id createdBy = request.POST['author'] # 作者 try: article = Article.objects.create( title=title, author=author, content=content, tags=Tag.objects.get(id=tagId), createdBy=createdBy) result = model_to_dict(article) result["tags"] = model_to_dict(article.tags) result["createdAt"] = article.createdAt.strftime("%Y-%m-%d %H:%M:%S") return HttpResponse(json.dumps({"status": "OK", "result": result})) except: return HttpResponse(json.dumps({"status": "ERROR", "message": "数据库错误或服务器异常"}))
def new_tag(request): logInfo(request) name = request.POST['name'] color = request.POST['color'] createdBy = request.POST['createdBy'] try: newtag = Tag.objects.create(name=name, color=color, createdBy=createdBy) result = model_to_dict(newtag) result["createdAt"] = newtag.createdAt.strftime("%Y-%m-%d %H:%M:%S") return HttpResponse(json.dumps({"status": "OK", "result": result})) except: return HttpResponse( json.dumps({ "status": "ERROR", "message": "输入标签数据有误" }))