用flask搭建博客简易登录页面

1.创建如下图所示的表结构:

在这里插入图片描述

2.base.html里面代码如下:

{% extends 'bootstrap/base.html' %}


{#定制标题#}
{% block title %}{% endblock %}


{#定制导航条#}

{% block navbar %}

<nav class="navbar navbar-inverse">
  <div class="container-fluid">
    <!-- Brand and toggle get grouped for better mobile display -->
    <div class="navbar-header">
      <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1" aria-expanded="false">
        <span class="sr-only">Toggle navigation</span>
        <span class="icon-bar"></span>
        <span class="icon-bar"></span>
        <span class="icon-bar"></span>
      </button>
      <a class="navbar-brand" href="#">2002博客</a>
    </div>

    <!-- Collect the nav links, forms, and other content for toggling -->
    <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1">
      <ul class="nav navbar-nav">
        <li class="active"><a href="#">博客 <span class="sr-only">(current)</span></a></li>
        <li><a href="#">Link</a></li>
        <li class="dropdown">
          <a href="#" class="dropdown-toggle" data-toggle="dropdown" role="button" aria-haspopup="true" aria-expanded="false">Dropdown <span class="caret"></span></a>
          <ul class="dropdown-menu">
            <li><a href="#">Action</a></li>
            <li><a href="#">Another action</a></li>
            <li><a href="#">Something else here</a></li>
            <li role="separator" class="divider"></li>
            <li><a href="#">Separated link</a></li>
            <li role="separator" class="divider"></li>
            <li><a href="#">One more separated link</a></li>
          </ul>
        </li>
      </ul>
      <form class="navbar-form navbar-left">
        <div class="form-group">
          <input type="text" class="form-control" placeholder="Search">
        </div>
        <button type="submit" class="btn btn-default">Submit</button>
      </form>
      <ul class="nav navbar-nav navbar-right">
        <li><a href="#">登录</a></li>
        <li><a href="#">注册</a></li>
        </ul>
    </div><!-- /.navbar-collapse -->
  </div><!-- /.container-fluid -->
</nav>
{%- endblock navbar %}

{#定制内容#}
{% block content -%}
    <div class="container">

    </div>


{%- endblock content %}


{#定制脚本#}
  {% block scripts %}
  {%- endblock scripts %}

3.index.html里面的代码如下:

{% extends 'common/base.html' %}


{% block title %}
博客首页
{% endblock %}



{% block content %}
    博客内容
{% endblock %}

login.html里面的代码如下:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>我是登录页</title>
</head>
<body>
    我是登录页
</body>
</html>

4.register.html里面的代码如下:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>我是注册页面</title>
</head>
<body>
    <h1>我是注册页面</h1>
</body>
</html>

5.main.py里面的代码如下:

from flask import Blueprint,render_template


main = Blueprint("main",__name__)



@main.route('/')
def index():
    return render_template('main/index.html')

6.posts.py里面的代码如下:

from flask import Blueprint,render_template


posts = Blueprint("posts",__name__)



@posts.route('/posts/')
def index():
    return '感谢老铁收藏'

7.users里面的代码如下:

from flask import Blueprint,render_template


users = Blueprint("users",__name__)



@users.route('/login/')
def login():
    return render_template('users/login.html')


@users.route('/register/')
def register():
    return render_template('users/register.html')

8.最底下那个init.py里面的代码如下

from flask import Flask
from .views import config_blueprint
from .exts import config_extensions
from .config import config
#封装一个函数 专门用来创建app
#开发过程中 有 生产环境、测试环境、开发环境
#需要三个数据库 为了提升效率 传参数 指定你的环境是哪一个
def create_app(config_name):
    app = Flask(__name__)
    app.config.from_object(config[config_name])
    #配置蓝本
    config_blueprint(app)
    config_extensions(app)
    return app

9.config.py里面的代码如下:



#通用配置
class Config(object):

    #bootstrap使用本地的静态文件
    BOOTSTRAP_SERVE_LOCAL = True


#开发环境
class DevelopmentConfig(Config):
    pass

#测试环境
class TestingConfig(Config):
    pass

#生产环境
class ProductionConfig(Config):
    pass

config = {
    'test':TestingConfig,
    'product':ProductionConfig,
    'default':DevelopmentConfig,
}

10.exts.py里面的代码如下:

#导入类库

from flask_bootstrap import Bootstrap

#实例化对象

bootstrap = Bootstrap()

#封装函数 完成初始化

def config_extensions(app):
bootstrap.init_app(app)

11.manage.py里面的代码如下:

from flask_script import Manager
from apps import create_app

app = create_app(‘product’)
manager = Manager(app)

if name == ‘main’:
manager.run()
代码写完之后,点击如图所示:
在这里插入图片描述
输入:python manage.py runserver -d -r -p 5050
回车即可,点击下方出现的地址即可访问,效果图如下:
在这里插入图片描述

  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值