From 2c505b34957dcbf3f8e2444bfc7d63dc0d7cc842 Mon Sep 17 00:00:00 2001 From: xayyuu Date: Mon, 8 Jan 2018 21:12:47 +0800 Subject: [PATCH] temp --- README.md | 4 ++-- auth/__init__.py | 9 ++++++++ auth/views.py | 37 ++++++++++++++++++++++++++++++++ config.py | 9 ++++---- data.sqlite | Bin 10240 -> 10240 bytes helper.py | 2 +- manager.py | 2 +- myapp.py | 7 ++++-- requirement.txt | 1 - templates/{ => auth}/login.html | 19 ++++++++-------- views.py | 17 +-------------- 11 files changed, 71 insertions(+), 36 deletions(-) create mode 100644 auth/__init__.py create mode 100644 auth/views.py rename templates/{ => auth}/login.html (78%) diff --git a/README.md b/README.md index adb3fb4..7f187c2 100644 --- a/README.md +++ b/README.md @@ -1,3 +1,3 @@ -基于https://github.com/sixu05202004/flaskblog 的源代码进行二次开发,暂时先用这个结构,会逐渐过渡,替换掉其中许多内容。 +基于https://github.com/sixu05202004/flaskblog 的源代码(在此感谢原作者,如有版权问题,请通知我,我会立即删除相关内容)进行二次开发,暂时先用这个结构,未来将逐渐过渡,优化整体内容。 -如果有任何问题,欢迎联系: yuxiao2113@gmail.com +如有任何问题,欢迎联系: yuxiao2113@gmail.com diff --git a/auth/__init__.py b/auth/__init__.py new file mode 100644 index 0000000..75749c8 --- /dev/null +++ b/auth/__init__.py @@ -0,0 +1,9 @@ +#coding=utf-8 + + +# for auth +from flask import Blueprint + +auth = Blueprint('auth', __name__) + +from . import views \ No newline at end of file diff --git a/auth/views.py b/auth/views.py new file mode 100644 index 0000000..03dd35f --- /dev/null +++ b/auth/views.py @@ -0,0 +1,37 @@ +# -*- coding: utf-8 -*- +from flask import Flask, render_template, url_for, redirect, request, flash, session, g, abort +from myapp import app +from model import article_tags, Category, Post, Tag, Comment, pageby, db +from werkzeug import secure_filename +from werkzeug.contrib.atom import AtomFeed +from flask_cache import Cache +from random import shuffle +from HTMLParser import HTMLParser +from re import sub +from sys import stderr +from traceback import print_exc +import os +import json +import time +from datetime import datetime +from form import CommentForm +from config import CATALOG + +from . import auth + + +@auth.route('/login', methods=['GET', 'POST']) +def login(): + error = None + if request.method == 'POST': + if request.form['username'] != app.config['USERNAME']: + error = 'Invalid username' + flash(error) + elif request.form['password'] != app.config['PASSWORD']: + error = 'Invalid password' + flash(error) + else: + session['logged_in'] = True + flash('You were logged in') + return redirect(url_for('newpost')) + return render_template('auth/login.html') \ No newline at end of file diff --git a/config.py b/config.py index 1fb1a55..7ddf846 100644 --- a/config.py +++ b/config.py @@ -25,10 +25,11 @@ basedir = os.path.abspath(os.path.dirname(__file__)) SQLALCHEMY_DATABASE_URI = 'sqlite:///'+ os.path.join(basedir, 'data.sqlite') +# proj code : zhuzi +SECRET_KEY =os.environ.get("SECRET_KEY_ZHUZI") +USERNAME = os.environ.get("USERNAME_ZHUZI") +PASSWORD = os.environ.get("PASSWORD_ZHUZI") -SECRET_KEY = 'A0Zr98j/3yX R~XHH!jmN]LWX/,?RT' -USERNAME = 'admin' -PASSWORD = 'admin1234' UPLOAD_FOLDER = './static/upload/' ALLOWED_EXTENSIONS = set(['txt', 'pdf', 'png', 'jpg', 'jpeg', 'gif']) @@ -37,4 +38,4 @@ RECAPTCHA_PRIVATE_KEY = '6Ld4rwITAAAAAFE8nTS852QbsqCBx1mN8D4BqenE' # 目錄 -CATALOG = [u'Python', u'算法', u'运维', u'人工智能', u"文学"] +CATALOG = [u'Python', u'Algorithm', u'DevOps', u'AI', u"Life"] diff --git a/data.sqlite b/data.sqlite index 2ad0fe5d9c2d242b6dc8134b346a41459e7e29bd..9d4bb92231cd9b8dc933989824840b76bbc64f60 100644 GIT binary patch delta 372 zcmZ{eu}T9$7=-`5xlOY17P%sj!$2%7J=sg52LX!{5dxz35JnSFBN_y|JVJa0-@v5P zJi?{aN?WzF(k3bVFNbz6%)&nd-^?H$#KRT0LPSN@?_0iIugePgZ%g+_cW@HI7vAxL zCnRIndB9#?f=c_{RxZq!l$dAsfF!;34&0#&2alip>w-#Jr)gZQT3>7Azq5>vu6 zKJbbuzM1ui?E*?-fy%)ZQOhpE6B!B`Rq= z;b2E-Hg%*5N<~7~Oc44(%@4L#&1Tbt&4$@%gmq)g|A|aj3(N`gMOB_pK&w&NcGj{9 aq}WT9W;vE**(|UuUXs9(7KE_)gHk_n!baEt delta 899 zcmZ{iOH30{6ozN!bRyHVA~7U3VuA}+2u`PvDj_B;Ox($mEk=xqMvZjis^ul`QW9-x zsm5R+fVQ+$>0>Bez>Y+>?lkc}23?2=8WT63%P3-qGjk_r?m6@Q|C~9Y&QNFMbWOD+ zNlsjU4t4sRPpy`kz813A=fJfo!8iB>@8Jz>=4xD7xT>ijd02FqrWUFlAT^LuiRR~7 zykrfOHNc!ziE#6kreMg^F_wF*$ryG%2;97TM<}VVCBb)i3tR9RJ|J`zt~kLX+f4NY zG{}dU4w18&AVQm|XyDOorW=_G>B-qz*|K3#9o;eRQ=p?1k`=}c{{ z{ckl-FAf2oJ%OIyfLMlp`8U<5_xjrmr23nE#zkG%9S77SDSMQ}04qQw_yGim?H$ye mghrYC>smPmwVF^`J>_s!DX=HOPuRn93tXxKvaH|@H0>8rVvt4v diff --git a/helper.py b/helper.py index 3c1c772..50410f8 100644 --- a/helper.py +++ b/helper.py @@ -6,4 +6,4 @@ markdown = functools.partial(markdown.markdown, safe_mode='remove', - output_format="html") + output_format="html") diff --git a/manager.py b/manager.py index a75aa33..7ae017e 100644 --- a/manager.py +++ b/manager.py @@ -11,7 +11,7 @@ :copyright: (c) 2013. :license: BSD, see LICENSE for more details. """ -from flask.ext.script import Server, Manager, prompt_bool +from flask_script import Server, Manager, prompt_bool from myapp import app from model import db from config import CATALOG diff --git a/myapp.py b/myapp.py index 333b57c..3bb2904 100644 --- a/myapp.py +++ b/myapp.py @@ -1,11 +1,14 @@ # -*- coding: utf-8 -*- from flask import Flask - app = Flask(__name__) app.config.from_object('config') -from views import * +from auth import auth as auth_blueprint +app.register_blueprint(auth_blueprint) + +from auth.views import * +from views import * if __name__ == '__main__': app.run(host='0.0.0.0', port=5000, debug=True) diff --git a/requirement.txt b/requirement.txt index e3e18e5..cc38345 100644 --- a/requirement.txt +++ b/requirement.txt @@ -6,4 +6,3 @@ Flask-Testing == 0.4.1 Flask-Script == 0.6.7 Flask-Uploads == 0.1.3 markdown >= 2.5.2 -gevent diff --git a/templates/login.html b/templates/auth/login.html similarity index 78% rename from templates/login.html rename to templates/auth/login.html index ab17d50..94dedb2 100644 --- a/templates/login.html +++ b/templates/auth/login.html @@ -9,17 +9,15 @@ + {% for message in get_flashed_messages() %} +

{{ message }} +

+ {% endfor %} + -
- {% if not session.logged_in %} - log in - {% else %} - log out - {% endif %} -
-
+

@@ -47,8 +45,11 @@ wp_attempt_focus(); if(typeof wpOnload=='function')wpOnload(); -

← 首页' Home

+

← 首页' Home

+ + + \ No newline at end of file diff --git a/views.py b/views.py index 6d005cf..0e9733a 100644 --- a/views.py +++ b/views.py @@ -257,7 +257,7 @@ def search(pageid=1): searchword = request.args.get('s', '') if not searchword: - return redirect(url_for('error_404')) + return redirect(url_for('index')) searchresult = Post.query.search(searchword) @@ -378,21 +378,6 @@ def error(content='404'): return render_template('/error.html', content=content) -@app.route('/login', methods=['GET', 'POST']) -def login(): - error = None - if request.method == 'POST': - if request.form['username'] != app.config['USERNAME']: - error = 'Invalid username' - elif request.form['password'] != app.config['PASSWORD']: - error = 'Invalid password' - else: - session['logged_in'] = True - flash('You were logged in') - return redirect(url_for('newpost')) - return render_template('login.html') - - @app.route('/logout') def logout(): session.pop('logged_in', None)