zoukankan      html  css  js  c++  java
  • flask orm

    src/db/modls.py

    # -*- coding: utf-8 -*-
    from sqlalchemy.ext.declarative import declarative_base
    from sqlalchemy import Column,String,Integer
    from sqlalchemy import create_engine
    Basic=declarative_base()
    
    class Index_shop_info(Basic):
       __tablename__ = "Index_shop_info"
       id = Column('id', Integer, primary_key = True)
       title = Column(String(50))
       link = Column(String(1024))
       sl_baozheng= Column(String(50))
       __table_args__ = {
           'mysql_charset': 'utf8'
       }
    
    
    class Shop_detail(Basic):
        __tablename__ = "Shop_detail"
        id = Column('id', Integer, primary_key=True)
    
        __table_args__ ={
            'mysql_charset': 'utf8'
        }
    
    
    engine = create_engine('mysql+mysqlconnector://root:root@127.0.0.1/xianyu', convert_unicode=True)
    metadata = Basic.metadata.create_all(bind=engine)
    

     

    orm

    from src.db import models
    from sqlalchemy.orm import sessionmaker
    from contextlib import closing
    def get_session():
        session=sessionmaker(bind=models.engine)()
        return session
    
    
    def query_all(session,table=None):
        with closing(session) as session:
            reuslt = session.query(table).all()
        return reuslt
    
    
    
    def add_object(session,rowobject):
        with closing(session) as session :
            result=session.add_all(rowobject)
            session.commit()
        return result
    
    def myfilter(session=None,tableclass=None,**kwargs):
        query_list=tableclass
        #{"字段":值}
        tiaojian_dic={getattr(tableclass,k):v for k,v in kwargs.items() }
        tiaojian_list=[k==v  for k,v in tiaojian_dic.items()]
        for k,v in tiaojian_dic.items() :
            tiaojian_list.append(k==v)
    
        query_list=session.query(tableclass).filter(*tiaojian_list)
    
        return query_list
    
    
    if __name__ == '__main__':
        session=get_session()
        #查所有
        query_all(session,models.Index_shop_info)
        #过滤
        result=myfilter(session=session,tableclass=models.Index_shop_info,sl_baozheng = '实力保证', id = 1)
        #增
        row_list=[models.Index_shop_info(title="test",link='test',sl_baozheng='test')]
        add_object(session,row_list)
    

      

  • 相关阅读:
    Python之while循环
    Python之分支语句
    Python之变量
    Python开挂的吧!
    xshell 连接 ubuntu 16.04报错
    js中的script标签
    javascript中的事件学习总结
    【JAVAWEB学习笔记】04_JavaScript
    【JAVAWEB学习笔记】03_JavaScript
    【JAVAWEB学习笔记】02_HTML&CSS
  • 原文地址:https://www.cnblogs.com/xzqpy/p/13597262.html
Copyright © 2011-2022 走看看