リソースに高度なフィルターを実装しようとしていますが、独自のフィルターを作成して適用するには、助けが必要です。目標は、次のような URL からオブジェクト リストを取得する前に、API UserResource でフィルター情報を取得することです。
http://127.0.0.1:8000/api/users/list/&orderby="gender"&limit=10
実際、私のリソースは次のようになります。
class UserResource(Resource):
firstName = fields.CharField(attribute='firstName')
lastName = fields.CharField(attribute='lastName')
gender= fields.CharField(attribute='gender')
status= fields.IntegerField(attribute='status')
date= fields.DateTimeField(attribute='date')
class Meta:
resource_name = 'users/list'
object_class = dict2obj
authorization = Authorization()
def detail_uri_kwargs(self, bundle_or_obj):
kwargs = {}
if isinstance(bundle_or_obj, Bundle):
kwargs['pk'] = bundle_or_obj.obj.firstName
else:
kwargs['pk'] = bundle_or_obj.firstName
return kwargs
def obj_get_list(self, request=None, **kwargs):
db = MySQLdb.connect(host='xxx.xxx.xxx',user='test2',passwd='xxx',db='mydb')
cur = db.cursor()
cur.execute("SELECT * FROM users order by gender Desc limit 0,10")
users=cur.fetchall()
#...
db.close()
return posts
フィルター情報を取得して obj リストを返す方法を知りたいです。