• flask-script


    类似于 django 下 命令行运行项目,例 python manage.py runserver ..

    项目同级目录新建manage.py文件

    #-*-coding:utf-8-*-
    
    from flask_script import  Manager    #导入模块
    from flask_test import app         
    from db_script import db_manager      #从db_script.py文件引入db_manager对象
    manager = Manager(app)
    
    @manager.command
    def runserver():
        print (' start flask')
       app.run(host='192.168.132.130',debug=True)   #表示启动项目
    manager.add_command('db',db_manager)    #引入别的脚本文件,直接add_command,其中db为自定义名称,是在命令行要执行的命令,db_manager为在db_script.py文件中初始化的Manger对象 if __name__ == '__main__': manager.run()

    flask_test.py (程序入口)

    from flask import Flask,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(100),nullable=False)
    
    class Article(db.Model):
        __tablename__ = 'article'          
     
        id = db.Column(db.Integer,primary_key=True,autoincrement=True)
        title = db.Column(db.String(100),nullable=False)  
        content = db.Column(db.Text,nullable=False)
        
        author_id = db.Column(db.Integer,db.ForeignKey('user.id'))
    
        author = db.relationship('User',backref=db.backref('articles'))       
    db.create_all()
    
    @app.route('/')
    def index():
        # user1 = User(username="test_flask2")
        # db.session.add(user1)
    
        # article = Article(title='eeee',content='cfffff')
        # article.author = User.query.filter(User.id==3).first()
        #
        # db.session.add(article)
        # db.session.commit()
        
        #article = Article.query.filter(Article.title=="eeee").first()
        # author_id = article.author_id
        #
        user = User.query.filter(User.username=="test_flask3")
        # print (user.username)
        #print (article.author.username)
        print (user.articles)
        return 'Hello World!'
    
    
    if __name__ == '__main__':
        app.run(host='192.168.132.130',debug=True)

    数据库操作测试

    db.script.py

    #-*-coding:utf-8-*-
    
    from flask_script import Manager
    
    db_manager=Manager()          #初始化对象
    
    @db_manager.command
    def init():
        print ('db init')
    
    
    @db_manager.command
    def migrate():
        print ('db migrate')

    执行效果

     

  • 相关阅读:
    django 查询
    django orm
    django 基础
    RFS自动化测试工具安装与使用总结
    虚拟机安装(Cent OS)
    RobotFramework 切换窗口控制的用法小结
    Selenium2Library中select frame关键字对没有name和id的frame或者iframe的处理
    robotframework+selenium2library之上传本地文件
    element not visible的解决方法
    robotframework悬浮菜单定位问题
  • 原文地址:https://www.cnblogs.com/FRESHMANS/p/8461259.html
Copyright © 2020-2023  润新知