pony-rest
A subset implementation of PostgREST.
You should read PostgREST and PonyORM first.
Install
pip install pony-rest
Example
Edit entities.py:
from pony.orm import *
db = Database()
class Person(db.Entity):
name = Required(str)
age = Required(int)
cars = Set('Car')
class Car(db.Entity):
make = Required(str)
model = Required(str)
owner = Required(Person)
then:
python -m pony_rest
or via wsgi:
gunicorn pony_rest
How to use this server to do CRUD
T=localhost:3333
# create new Person
curl -H 'content-type: application/json' -d '{"name": "foo", "age": 10}' $T/person
# read Person list
curl localhost:18000/person
# update Person where id is 1
curl -H 'content-type: application/json' -X PATCH -d '{"age": 10}' "$T/person?id=eq.1"
# delete Person where id is 1
curl -X DELETE "$T/person?id=eq.1"
Connect your database
Install module pyyaml, then create a configure file: database.yaml in your working directory, likes:
provider: sqlite
filename: ":memory:"
create_db: true
create_tables: true
...and see database.yaml in this repo to find more.
Note: only the first block configurations in yaml file is used for database, you could leave the old configurations in next blocks.
Lots TODO...
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
pony-rest-3.1.tar.gz
(4.9 kB
view details)
File details
Details for the file pony-rest-3.1.tar.gz.
File metadata
- Download URL: pony-rest-3.1.tar.gz
- Upload date:
- Size: 4.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via:
twine/1.12.1 pkginfo/1.4.2 requests/2.21.0 setuptools/40.6.3 requests-toolbelt/0.8.0 tqdm/4.28.1 CPython/3.7.2
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
008e4f6fb96449f80d3786073f921b64b0c2c92e7ef0e33b9850e7e2d8ae3c68
|
|
| MD5 |
a5387bd2d06112ab7e5138aa3da14a45
|
|
| BLAKE2b-256 |
bfdb3aec9279d3cc4427dd4e8646c6a929ba3daaf23fb9306fba2286ef71020f
|