【发布时间】:2013-09-16 06:20:09
【问题描述】:
我正在用头撞这个。过去我已经成功完成了 SQLAlcemy + URL Dispatch 教程。现在无论我做什么,写入sqlite db文件的尝试都失败了,抛出:
OperationalError: (OperationalError) attempt to write a readonly database u'INSERT INTO pages (name, data) VALUES (?, ?)' (u'NewPage', u'A new page is dawning.')
我当前配置的变化是:
- 我正在运行 mod_wsgi 下的教程,而不是 pserve。
- 在 pserve 下运行结果是一样的
- 这个系统运行的是 python 2.6.5 vs 2.7.5
数据文件初始化良好。所有权与 wsgi 进程所有者相同。我很困惑。
这是models.py:
from sqlalchemy import (
Column,
Index,
Integer,
Text,
)
from sqlalchemy.ext.declarative import declarative_base
from sqlalchemy.orm import (
scoped_session,
sessionmaker,
)
from zope.sqlalchemy import ZopeTransactionExtension
DBSession = scoped_session(sessionmaker(extension=ZopeTransactionExtension()))
Base = declarative_base()
class Page(Base):
__tablename__ = 'pages'
id = Column(Integer, primary_key=True)
name = Column(Text, unique=True)
data = Column(Text)
def __init__(self, name, data):
self.name = name
self.data = data
Index('page_index', Page.name, unique=True, mysql_length=255)
教程非常简单。
任何想法都非常感谢。
【问题讨论】:
-
我很确定问题出在文件系统权限的某个地方
标签: sqlalchemy runtime-error pyramid readonly