指向sqlite数据库的相对sqlalchemy路径可以写成:
sqlite:///folder/db_file.db和一个绝对的,如:
sqlite:////home/user/folder/db_file.db有没有可能写一个相对于home的路径?如下所示:
sqlite:///~/folder/db_file.db或者更好的是,path可以包含环境变量吗?
sqlite:////${MY_FOLDER}/db_file.db这是alembic.ini文件的上下文。因此,如果前面的目标不能直接实现,我可以使用变量替换来作弊吗?
[alembic]
script_location = db_versions
sqlalchemy.url = sqlite:///%(MY_FOLDER)s.db
...发布于 2021-08-25 16:04:12
正如其他人所指出的,一个键是相对的3个斜杠,绝对的4个斜杠。
但我需要的不仅仅是这些..。
在处理字符串时遇到问题,我不得不这样做:
db_dir = "../../database/db.sqlite"
print(f'os.path.abspath(db_dir): {str(os.path.abspath(db_dir))}')
SQLALCHEMY_DATABASE_URI = "sqlite:///" + os.path.abspath(db_dir) # works
# SQLALCHEMY_DATABASE_URI = "sqlite:///" + db_dir # failshttps://stackoverflow.com/questions/59109682
复制相似问题