TinyORM:一个轻量级的 ORM 库

TinyORM:一个轻量级的 ORM 库

TinyORM 是一款轻量级的 ORM(对象关系映射)库,用于将 Python 类与数据库表进行映射,使得程序员可以像操作对象一样操作数据库表。它可以极大地提高开发效率,减少与数据库交互时的代码量。

功能特性

  • 简单易用:只需定义 Python 类即可创建对应的数据库表。
  • 支持多种数据库:目前支持 SQLite、MySQL 和 PostgreSQL 数据库。
  • 支持多种查询方式:包括 SQL 查询语句、Python 表达式和 ORM 方法。
  • 支持事务处理:支持手动或自动提交/回滚事务。
  • 支持模型继承:可以通过继承父类的方式扩展数据表结构。

快速上手

要开始使用 TinyORM,你需要先安装它:

pip install tinyorm

接下来,你可以通过定义 Python 类来创建数据库表:

from tinyorm import Model, Field

class User(Model):
    id = Field(int, primary_key=True)
    name = Field(str)
    age = Field(int)

在上面的例子中,我们定义了一个名为 User 的类,并指定了三个字段:id(整型,主键)、name(字符串)和 age(整型)。这将在数据库中创建一个名为 user 的表。

然后,你可以像操作普通 Python 对象一样操作数据库表:

# 插入一条记录
u = User(id=1, name='Alice', age=20)
u.save()

# 查询所有记录
users = User.objects.all()
for u in users:
    print(u.id, u.name, u.age)

# 更新记录
u.name = 'Alicia'
u.update()

# 删除记录
u.delete()

在这个例子中,我们展示了如何插入、查询、更新和删除数据表中的记录。

示例应用

为了更好地了解 TinyORM 的功能和用法,让我们来看一个完整的示例应用。假设我们要创建一个简单的博客系统,其中包括 PostComment 两个表。

首先,我们需要定义这两个表的 Python 类:

from tinyorm import Model, Field

class Post(Model):
    id = Field(int, primary_key=True)
    title = Field(str)
    content = Field(str)
    created_at = Field(datetime.datetime, default=datetime.datetime.now)

class Comment(Model):
    id = Field(int, primary_key=True)
    post_id = Field(int)
    author = Field(str)
    content = Field(str)
    created_at = Field(datetime.datetime, default=datetime.datetime.now)

接下来,我们可以使用这些类来执行常见的 CRUD 操作:

# 创建一篇文章
p = Post(title='Hello World', content='This is my first blog post!')
p.save()

# 在这篇文章下添加一条评论
c = Comment(post_id=p.id, author='Alice', content='Great post!')
c.save()

# 获取所有文章
posts = Post.objects.all()
for p in posts:
    print(p.title)

# 获取文章的所有评论
comments = Comment.objects.filter(post_id=p.id).all()
for c in comments:
    print(c.author, c.content)

以上就是使用 TinyORM 创建简单博客系统的完整示例。有了它,你可以轻松地进行数据库操作,而无需关心底层的 SQL 语句。

结语

TinyORM 是一个轻量级的 ORM 库,能够让你更高效地与数据库进行交互。它的简单易用性和强大的功能使其成为小型项目的理想选择。如果你想了解更多关于 TinyORM 的信息,请访问项目的 GitCode 页面:https://gitcode.com/silverqx/TinyORM?utm_source=artical_gitcode

希望本文对你有所帮助,如果你喜欢 TinyORM,欢迎将其分享给更多的人。

  • 8
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

马冶娆

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值