flask_peeweeのRestAPIで取得条件を設定する
flask_peeweeのRestAPIではクエリパラメータで取得条件を設定することができます
全件取得
http://localhost:5000/api/post/
{
"meta": {
"model": "post",
"next": "",
"page": 1,
"previous": ""
},
"objects": [
{
"entry": "test_entry1",
"created": "2011-11-15 17:23:57",
"user_id": 1,
"id": 1,
"title": "test_title1"
},
{
"entry": "test_entry2",
"created": "2011-11-15 17:24:06",
"user_id": 2,
"id": 2,
"title": "test_title2"
}
]
}
ユーザーの条件を設定
http://localhost:5000/api/post?user=2
{
"meta": {
"model": "post",
"next": "",
"page": 1,
"previous": ""
},
"objects": [
{
"entry": "test_entry2",
"created": "2011-11-15 17:24:06",
"user_id": 2,
"id": 2,
"title": "test_title2"
}
]
}djangoのようにリレーションをまたいだ取得条件を設定することもできます
http://localhost:5000/api/user/
{
"meta": {
"model": "user",
"next": "",
"page": 1,
"previous": ""
},
"objects": [
{
"username": "admin",
"created": "2011-11-15 17:23:10",
"admin": true,
"email": "",
"active": true,
"id": 1
},
{
"username": "guest",
"created": "2011-11-15 17:23:30",
"admin": false,
"email": "",
"active": true,
"id": 2
}
]
}http://localhost:5000/api/post?user__username=guest
{
"meta": {
"model": "post",
"next": "",
"page": 1,
"previous": ""
},
"objects": [
{
"entry": "test_entry2",
"created": "2011-11-15 17:24:06",
"user_id": 2,
"id": 2,
"title": "test_title2"
}
]
}