用户首页
center.html
{% extends 'base.html' %}
{% block title %}用户首页{% endblock %}
{% block footer %}
<div>
<a href="{{ url_for('user.register') }}">注册</a> <br>
<a href="{{ url_for('user.login') }}">登录</a>
</div>
<div>
<h1>所有的用户信息如下:</h1>
搜索 : <input type="text" name="search" placeholder="请输入要搜索的词语" > <input type="button" value="搜索">
{% if user %}
<table border="1">
<tr>
<th>序号</th>
<th>用户名</th>
<th>手机号</th>
<th>注册时间</th>
<th>操作</th>
</tr>
{% for user in user %}
<tr>
<th>{{ loop.index }}</th>
<th>{{ user.username }}</th>
<th>{{ user.phone }}</th>
<th>{{ user.rdatetime }}</th>
<th>
<a href="{{ url_for('user.update') }}">修改</a>
<a href="javascript:;">删除</a>
</th>
</tr>
{% endfor %}
</table>
{% else %}
<p style="color: red">当前还没有任何的用户</p>
{% endif %}
</div>
{% endblock %}
CDN
- CDN的全称是Content Delivery Network,即内容分发网络。CDN是构建在现有网络基础之上的智能虚拟网络,依靠部署在各地的边缘服务器,通过中心平台的负载均衡、内容分发、调度等功能模块,使用户就近获取所需内容,降低网络拥塞,提高用户访问响应速度和命中率。
jquery cdn
- 百度cdn :
<script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script>
使用jquery完成搜索
center.html
{% extends 'base.html' %}
{% block title %}用户首页{% endblock %}
{% block myjquery %}
<script src="http://libs.baidu.com/jquery/2.0.0/jquery.min.js"></script>
{% endblock %}
{% block footer %}
...
<div>
<h1>所有的用户信息如下:</h1>
搜索 : <input type="text" name="search" placeholder="请输入要搜索的词语" > <input type="button" value="搜索" id="search">
...
</div>
{% endblock %}
{% block myjq %}
<script>
{# 给搜索按钮绑定单击事件 #}
$('#search').click(function () {
{# 根据属性查找, 获取输入的数据 #}
let content = $("input[name='search']").val();
{# 走search路由, 并携带一个变量content #}
location.href = '{{ url_for('user.search') }}?search='+content
})
</script>
{% endblock %}
view.py
# 搜索
@user_bp.route('/search', methods=['GET', 'POST'])
def search():
# 获取get请求提交的数据
user_search = request.args.get('search')
# 根据提交的数据查询
user_list = User.query.filter(or_(User.username.contains(user_search), User.phone.contains(user_search))).all()
# 返回到用户首页
return render_template('user/center.html', user=user_list)
逻辑删除
views.py
# 删除
@user_bp.route('/delete')
def delete():
# 获取用户id
user_id = request.args.get('id')
# 根据id查找用户
user = User.query.get(user_id)
# 逻辑删除
user.isdelete = True
# 提交
db.session.commit()
return redirect(url_for('user.user_center'))
center.html
<a href="{{ url_for('user.delete') }}?id={{ user.id }}">删除</a>
物理删除
- 使用
db.session.delete(要删除的对象)
修改
views.py
# 修改
@user_bp.route('/update', methods=['GET', 'POST'], endpoint='update')
def user_update():
if request.method == 'POST':
# 获取id
id = request.form.get('id')
# 根据id查找用户
user = User.query.get(id)
username = request.form.get('username')
password = request.form.get('password')
phone = request.form.get('phone')
user.username = username
user.phone = phone
db.session.commit()
return redirect(url_for('user.user_center'))
else:
user_id = request.args.get('id')
user = User.query.get(user_id)
return render_template('user/udpate.html', user=user)
update.html
{% extends 'base.html' %}
{% block title %}用户修改{% endblock %}
{% block footer %}
<form action="{{ url_for('user.update') }}" method="post">
<p><input type="hidden" name="id" value="{{ user.id }}"></p>
<p><input type="text" name="username" value="{{ user.username }}"></p>
<p><input type="text" name="phone" value="{{ user.phone }}"></p>
<p><input type="submit" value="修改"></p>
</form>
{% endblock %}