语言无关的 ORM 规范
{
"blog": {
"type": "Schema",
"title": {
"type": "String",
"max_length": [
256,
"Too long"
],
"trim": true,
"required": true
},
"author": "String",
"body": "String",
"comments": [
{
"type": "Schema",
"author": "String",
"body": "String",
"date": "Timestamp"
}
],
"hidden": "Boolean",
"meta": {
"type": "Inline",
"votes": "Number",
"fav": "Number"
}
}
}
orm = ORM(db="mysql://127.0.0.1/blog", schema=["schema.json"])
orm["blog"].check(
{
"title": "title",
"author": "tom",
"body": "blog content"
}
)
orm["blog"].create([
{
"title": "title",
"author": "tom",
"body": "blog content"
},
{
"title": "title2",
"author": "tom",
"body": "blog content"
}
])
queryset = orm["blog"].find().order().limit().offset().all()
queryset.count()
queryset.group().count()
queryset.aggregate()
queryset.update({})
queryset.delete()
instance = orm["blog"].find().first()
instance.update({})
instance.delete()
String
Number
Timestamp
Date
DateTime
Schema
Inline
Boolean
Json
Binary