def delete_classify(): uid = request.args.get('uid') classify = ClassifyModel.select().where(ClassifyModel.id == uid).first() if len(classify.websites) == 0: ClassifyModel.delete().where(ClassifyModel.id == uid).execute() else: print('Can not be deleted.') return redirect(url_for('classify'))
def delete_classify(): uid = request.args.get("uid") classify = ClassifyModel.select().where(ClassifyModel.id == uid).first() if len(classify.websites)==0: # 有内容的分类不能删除 ClassifyModel.delete().where(ClassifyModel.id == uid).execute() else: print("有内容的分类不能删除") return redirect(url_for("classify"))
def index(): websites = WebsiteModel.select().where(WebsiteModel.weight != 0) classifies = ClassifyModel.select().where( ClassifyModel.weight != 0).order_by(-ClassifyModel.weight) print(len(websites)) dct = {"websites": websites, "classifies": classifies} return render_template("index.html", **dct)
def classify(): if request.method == 'GET': classifies = ClassifyModel.select().order_by( ClassifyModel.weight.desc()) return render_template('classify.html', classifies=classifies) elif request.method == 'POST': name = request.form.get('name', '') if name == '': return 'No empty' weight = request.form.get('weight', '1') ret = ClassifyModel.select().where(ClassifyModel.name == name) if len(ret) == 0: ClassifyModel.create(name=name, weight=weight) else: ClassifyModel.update(weight=weight).where( ClassifyModel.name == name).execute() return redirect(url_for('classify'))
def classify(): if request.method=="GET": classifies = ClassifyModel.select().order_by(ClassifyModel.weight.desc()) return render_template("classify.html", classifies=classifies) elif request.method=="POST": name = request.form.get("name", "") if name=="": return "分类名不能为空" weight = request.form.get("weight", "1") ret = ClassifyModel.select().where(ClassifyModel.name==name) if len(ret)==0: # 不存在就添加了 ClassifyModel.create(name=name, weight=weight) else: # 存在就更新 ClassifyModel.update(weight=weight).where(ClassifyModel.name==name).execute() return redirect(url_for("classify"))
# Architecture num_features = 722 #316 # todo : compute num_hidden = [num_features, num_features] # num_hidden = [316,316] num_classes = 6 best_epoch = 3 train_loader, test_loader = LoadData(batch_size) ########################## ### TRAIN ########################## torch.manual_seed(random_seed) model = ClassifyModel(num_features=num_features, num_hidden=num_hidden, num_classes=num_classes, dropout_prob=dropout_prob) if os.path.exists('model_{}.pkl'.format(best_epoch)): model.load_state_dict(torch.load('model_{}.pkl'.format(best_epoch))) model = model.to(device) optimizer = torch.optim.Adam(model.parameters(), lr=learning_rate) def compute_accuracy(net, data_loader): net.eval() correct_pred, num_examples = 0, 0 with torch.no_grad(): for features, targets in data_loader:
def edit(): if request.method == 'GET': uid = request.args.get('uid') website = WebsiteModel.select().where(WebsiteModel.id == uid).first() classifies = ClassifyModel.select() return render_template("edit.html", website=website, classifies=classifies) elif request.method == 'POST': title = request.form.get('title', '') if title == '': return 'No empty Address!' url = request.form.get('url', '') if url == '': return 'No Empty Links!' ico = request.form.get('ico', '') print('ico', type(ico), ico) ret = None if ico == '': ret = get_website_info(url) ico = ret.get('icon') ico = download_icon(ico) description = request.form.get('description', '') if description == '': if ret == None: ret = get_website_info(url) description = ret.get('title', '') # None classify_id = request.form.get('classify', '') classify_id = int(classify_id) if classify_id != '' else 0 print(classify_id, type(classify_id)) weight = request.form.get('weight', '') weight = int(weight) if weight != '' else 1 uid = request.form.get('uid', '') ret = WebsiteModel.select().where( WebsiteModel.id == uid).first() if uid != '' else None # if any updates existes if ret: print('Updating...') WebsiteModel.update( title=title, ico=ico, description=description, url=url, classify_id=classify_id, weight=weight).where(WebsiteModel.id == uid).execute() else: # if the name is same ret = WebsiteModel.select().where(WebsiteModel.title == title) if len(ret) != 0: print('The website does exist.', title) else: WebsiteModel.create(title=title, ico=ico, description=description, url=url, classify_id=classify_id, weight=weight) print('Successfully Added.', title) return redirect(url_for('admin'))
def edit(): if request.method=="GET": uid = request.args.get("uid") website = WebsiteModel.select().where(WebsiteModel.id==uid).first() classifies = ClassifyModel.select() return render_template("edit.html", website=website, classifies=classifies) elif request.method == "POST": title = request.form.get("title", "") if title == "": return "网站名称不能为空!" url = request.form.get("url", "") if url == "": return "网站链接不能为空!" ico = request.form.get("ico", "") print("ico", type(ico), ico) ret = None if ico == "": ret = get_website_info(url) ico = ret.get("icon") ico = download_icon(ico) description = request.form.get("description", "") if description=="": if ret ==None: ret = get_website_info(url) description =ret.get("title", "") # 可能是 "" None classify_id = request.form.get("classify", "") classify_id = int(classify_id) if classify_id!="" else 0 print(classify_id, type(classify_id)) weight = request.form.get("weight", "") weight = int(weight) if weight != "" else 1 uid = request.form.get("uid", "") if uid !="": ret = WebsiteModel.select().where(WebsiteModel.id==uid).first() else: ret = None # 存在则更新 if ret: print("更新") WebsiteModel.update( title=title, ico=ico, description=description, url=url, classify_id=classify_id, weight=weight ).where(WebsiteModel.id==uid).execute() # 不存在则添加数据 else: # 同名网站不添加 ret = WebsiteModel.select().where(WebsiteModel.title==title) if len(ret)!=0: print("网站名已存在", title) else: WebsiteModel.create( title=title, ico=ico, description=description, url=url, classify_id=classify_id, weight=weight ) print("添加成功", title) return redirect(url_for("admin"))