[英]How to filter a query in flask-peewee by URL?
我想通過flask-peewee運行以下查詢,
merchant_name
喜歡'seaside%'
SELECT *
FROM `merchant_details`
WHERE `merchant_name` LIKE 'seaside%'
這是以下URL的返回JSON,我需要過濾merhcnat_name http://www.XXXXX.com/api/merchant_details/
http://www.XXXXX.com/api/merchant_details/?merchant_name__like=seaside (這不起作用)
{
"meta": {
"model": "merchant_details",
"next": "",
"page": 1,
"previous": ""
},
"objects": [
{
"merchant_name": "Seaside Grill",
"city": "Santa Monica ",
"zipcode": "90401",
"long": "-118.4884742",
"phone": "3102399844",
"state": "CA",
"updated_on": "2013-11-07 01:14:42",
"lat": "34.0189893",
"street_1": "406 Broadway",
"street_2": "1",
"merchant_id": "1",
"id": "2"
},
{
"merchant_name": "Jack n' Jill's",
"city": "Santa Monica",
"zipcode": "90401",
"long": "-118.4937635",
"phone": "3109873733",
"state": "CA",
"updated_on": "2013-11-08 08:20:29",
"lat": "34.0173215",
"street_1": "510 Santa Monica Blvd",
"street_2": "1",
"merchant_id": "48",
"id": "32"
}
]
}
您應該這樣編碼網址:
?merchant_name__like=seaside%25
您可以通過urllib.urlencode({'merchant_name__like': 'seaside%'})
獲得編碼的查詢字符串, ?merchant_name__like=seaside
表示在sql中LIKE seaside
。
您可以使用sqlalchemy-elasticquery來進行如下搜索:
?filters={ "merchant_nameseaside" : {"like" : "%seaside%"} }
和另一個自定義過濾器
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.