chinapnr / py-summer

Simplify and strengthen the Python web server development, mainly RESTful server, use Flask as the backend.
GNU General Public License v3.0
3 stars 1 forks source link

flask app 增加sqlite 路径和文件名支持 #1

Closed wingfish closed 5 years ago

wingfish commented 6 years ago

对于重构的 summer 中的 flask server 对象增加本地数据库支持,比如 sqlite。

沿用 jman 中的方式,在 config.py 中,sqlite 路径通过下面这样形式:

# 生成 sqlite 数据库的 uri 字符串
def get_db_sqlite_uri(db_name):

    db_sqlite_uri = 'sqlite:///' + fff.get_abs_filename_with_sub_path('db', db_name)[1]

    return db_sqlite_uri

可以在当前 work 路径下访问 db 路径下的 sqlite 数据库文件。

然后通过 config 对象返回:

class DevelopmentConfig(Config):
    DEBUG = True
    SQLALCHEMY_DATABASE_URI = get_db_sqlite_uri('jdb_dev.sqlite')
wingfish commented 6 years ago

在环境变量中设置: sqlite_name=database_name 如果该环境变量不存在,怎会自动命名为 'dev.sqlite'

# 开发环境配置
class DevelopmentConfig(Config):

    DEBUG = True

    sqlite_name = os.environ.get('SQLITE_NAME', default='dev.sqlite')
    SQLALCHEMY_DATABASE_URI = get_db_sqlite_uri(sqlite_name)