from flask import Flask,render_template,request,redirect,url_for,session
from flask_sqlalchemy import SQLAlchemy
import config
app = Flask(__name__)
app.config.from_object(config)
db=SQLAlchemy(app)
class User(db.Model):
__tablename__ = 'User'
id = db.Column(db.Integer,primary_key=True,autoincrement=True)
username = db.Column(db.String(20),nullable=False)
password = db.Column(db.String(20), nullable=False)
db.create_all()
@app.route('/')
def base():
return render_template("base.html")
@app.context_processor
def mycontext():
username=session.get('user')
if username:
return {'username':username}
else:
return{}
@app.route('/logout')
def logout():
session.clear()
return redirect(url_for('base'))
@app.route('/denglu/', methods=['GET', 'POST'])
def denglu():
if request.method == 'GET':
return render_template("denglu.html")
else:
username = request.form.get('username')
password = request.form.get('password')
user = User.query.filter(User.username == username).first()
if user:
if user.password == password:
session['user']=username
return redirect(url_for('base'))
else:
return '密码错误'
else:
return '用户名不存在'
@app.route('/zhuce/', methods=['GET', 'POST'])
def zhuce():
if request.method == 'GET':
return render_template("zhuce.html")
else:
username = request.form.get('username')
password = request.form.get('password')
user = User.query.filter(User.username == username).first()
if user:
return '用户名已存在'
else:
user = User(username=username, password=password)
db.session.add(user) # 数据库,添加操作
db.session.commit()
return redirect(url_for('denglu'))
@app.route('/fabu/')
def fabu():
return render_template('question.html')
if __name__=='__main__':
app.run(debug=True)
import os
SQLALCHEMY_DATABASE_URI = 'mysql+pymysql://root:@127.0.0.1:3306/mis15?charset=utf8'
SQLALCHEMY_TRACK_MODIFICATIONS = False
SECRET_KEY =os.urandom(24)
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>{% block title %}
{% endblock %}维尼乐园</title>
<link rel="stylesheet" type="text/css" href="{{ url_for('static',filename='css/20.css') }}">
<script src="{{ url_for('static',filename='js/1.js') }}"></script>
{% block head %}
{% endblock %}
</head>
<header class="navbar-wrapper">
<div class="navbar navbar-black">
<div class="container cl">
<nav class="nav navbar-nav nav-collapse" role="navigation" id="Hui-navbar">
<ul class="cl">
<li><a class="logo navbar-logo f-l mr-10 hidden-xs" href="base.html">首页</a></li>
<li><span class="logo navbar-slogan f-l mr-10 hidden-xs">简单 · 快乐 · 维尼世界</span></li>
{% if username %}
<li><a href="#">{{ username }}</a></li>
<li><a href="{{ url_for('logout') }}">注销</a></li>
{% else %}
<li><a href="{{ url_for('denglu')}}">登录</a></li>
<li><a href="{{ url_for('zhuce') }}">注册</a></li>
{% endif %}
<li><a class="#">联系我们</a></li>
</ul>
</nav>
</div>
{% block main %}
<div class="container">
<canvas id="c1"></canvas>
<canvas id="c2"></canvas>
<div class="snowglobe"></div>
<div class="highlight"></div>
<div class="base"></div>
<div class="baseTop"></div>
<div class="baseShadow"></div>
<div class="tree"></div>
<div class="tree2"></div>
<div class="tree3"></div>
<div class="tree4"></div>
<div class="roof"></div>
<div class="cabin"></div>
{% endblock %}
<footer class="footer mt-20">
<div class="container-fluid">
<nav> <a href="#" target="_blank">关于我们</a> <span class="pipe">|</span> <a href="#" target="_blank">联系我们</a> <span class="pipe">|</span> <a href="#" target="_blank">法律声明</a> </nav>
<p>Copyright ©2016 H-ui.net All Rights Reserved. <br>
<a href="http://www.miitbeian.gov.cn/" target="_blank" rel="nofollow">京ICP备1000000号</a><br>
</p>
</div>
</footer>
<nav class="navbar-userbar hidden-xs"></nav>
</div>
</div>
</header>
</html>