这是一个创建于 3256 天前的主题,其中的信息可能已经有所发展或是发生改变。
本人小白 实在是没辙了
config.py
import os
basedir=os.path.abspath(os.path.dirname(__file__))
SQLALCHEMY_DATABASE_URI='sqlite:////'+os.path.join(basedir,'app.db')
SQLALCHEMY_MIGRATE_REPO=os.path.join(basedir,'db_repository')
db_create.py
from migrate.versioning import api
from config import SQLALCHEMY_DATABASE_URI
from config import SQLALCHEMY_MIGRATE_REPO
from app import db
import os.path
db.create_all()
if not os.path.exists(SQLALCHEMY_MIGRATE_REPO):
api.create(SQLALCHEMY_MIGRATE_REPO,'database repository')
api.version_control(SQLALCHEMY_DATABASE_URI,SQLALCHEMY_MIGRATE_REPO)
else:
api.version_control(SQLALCHEMY_DATABASE_URI,SQLALCHEMY_MIGRATE_REPO,api.version(SQLALCHEMY_MIGRATE_REPO))
这里一直报错 查了好久资料了 修改过文件夹属性 也是绝对路径 但是一直报错
sqlalchemy.exc.OperationalError: (sqlite3.OperationalError) unable to open database file
万分感激各位 谢谢
14 条回复 • 2015-11-22 11:02:50 +08:00
|
|
1
jas0ndyq 2015-11-21 18:47:40 +08:00
路径问题
|
|
|
2
qmwk 2015-11-21 19:15:06 +08:00
@ jas0ndyq 您好 能否指出是哪里的路径出了问题呢 谢谢- -
|
|
|
3
qmwk 2015-11-21 19:16:15 +08:00
@ jas0ndyq 因为是对着教程一步步敲得 然后也把教程里的源码拿下来看了 没找出来问题。。搜了好久的解决方案了。。
|
|
|
4
445141126 2015-11-21 19:23:03 +08:00
sqlite://// 换成 sqlite:///
|
|
|
6
bnpysse 2015-11-21 19:31:30 +08:00 1
是不是权限的问题,我记得曾遇到过在某个目录里面没有权限创建数据库文件的问题。可以用用 chmod 把当前目录的权限更改一下地说
|
|
|
7
jas0ndyq 2015-11-21 19:35:52 +08:00 1
@ qmwk 你把路径直接写出来试试,不用 os 的方法。
|
|
|
8
Ge4Los 2015-11-21 19:40:11 +08:00 1
似乎是权限问题,没有 sqlite3 数据库文件所在目录的写权限。
|
|
|
9
qmwk 2015-11-21 19:55:23 +08:00
@ jas0ndyq 的确是路径的问题 我把路径直接写出来 然后改了下编码 中文路径下 ok 了 也就成功了 但是还是不知道为什么 之前的方式创建失败 谢谢大家 QAQ @ Ge4Los @ bnpysse
|
|
|
10
laiqs2011 2015-11-21 20:06:09 +08:00
basedir 中是不是含中文
|
|
|
11
qmwk 2015-11-21 20:17:54 +08:00
@ laiqs2011 是的 因为天翼网的原因没有用 linux 用的 win10 然后就有很蛋疼的中文目录
|
|
|
13
qmwk 2015-11-21 20:25:58 +08:00
|
|
|
14
dsp2138 2015-11-22 11:02:50 +08:00
我用的 peewee 也有很多蛋疼的地方! SQLAlchemy 很详细很周到,但也很麻烦 peewee 简略,但有些地方也太简了!~
|