2

我正在开发一个项目Flask并将SQLAlchemy其用作 ORM
我有一个User模型

class User(UserMixin, db.Model):
    __tablename__ = 'users'
    # noinspection PyShadowingBuiltins
    uuid = Column('uuid', GUID(), default=uuid.uuid4, primary_key=True,
                  unique=True)
    email = Column('email', String, nullable=False, unique=True)
    _password = Column('password', String, nullable=False)
    created_on = Column('created_on', sa.types.DateTime(timezone=True),
                        default=datetime.utcnow())
    last_login = Column('last_login', sa.types.DateTime(timezone=True),
                        onupdate=datetime.utcnow())
  • 我使用Alembic创建了一个迁移脚本。
  • 我选择的数据库PostgreSQL只是为了测试我更喜欢使用的模型SQLite来加快测试速度
  • 当有一些类型 inPostgreSQL而不是 in时,问题就出现了SQLite,在这种情况下UUID
  • 当我运行迁移时sqlite://,它给了我错误

AttributeError:“模块”对象没有属性“GUID”

问题
- 如何保存我的架构GUID并使用 SQLite 运行内存测试?似乎SQLite没有类似的东西
- 当他们的数据库运行时,人们有哪些方法可以更快地运行测试(在内存中)PostgreSQL

4

1 回答 1

1

SQLite 如何让测试更快?

无论如何,如果您想将内容保存在内存中……那么,请将数据库保存在内存中。实际上 PostgreSQL 将经常访问的数据移动到内存中,但无论如何,您可以安装一些 RAMFS/RAMHDD 解决方案并将您的数据库放在那里,这样会非常快

您可以谷歌解决方案“ramdisk 上的 postgresql”

于 2013-03-29T13:50:19.043 回答