Я хочу обработать запрос GET
в моем Flask REST API
. Запрос будет содержать параметр List
, и я использую его для типичного запроса GET:
https://localhost:5000/organisation?List=1
этот запрос вернет всю Organisation
информацию о модели. Organisation
- это класс Model для таблицы моей базы данных MySQL (peewee
).
Я хочу ввести в запрос параметр PrivenceId
и вернет всю информацию Organisation
, где информация о модели Organisation.PrivencedId == PrivenceId
, но я сталкиваюсь со следующей ошибкой: TypeError: 'Organisation' object is not iterable
мой код (OrganisationController.py
файл):
from flask_restplus import Resource, reqparse
from Models.Organisation import Organisation
from flask import request
# Define parser and request args
parser = reqparse.RequestParser()
parser.add_argument('List', type=int)
parser.add_argument('ProvinceId', type=int)
class List(Resource):
def get(self):
args = parser.parse_args()
List = args['List']
ProvinceId = args['ProvinceId']
if List :
Organisations = Organisation.select()
Ls = [dict (
ID = c.ID,
Title = c.Title,
Code = c. Code,
OrgEnumId = c.OrgEnumId,
ProvinceId = c.ProvinceId,
CityId = c.CityId,
Address = c.Address,
Phone = c.Phone,
) for c in Organisations
]
return dict(Organisations = Ls)
elif (ProvinceId) :
Organisations = Organisation.select().where
(
Organisation.ProvinceId ==args['ProvinceId']
).get()
Ls = [dict (
ID = c.ID,
Title = c.Title,
Code = c. Code,
OrgEnumId = c.OrgEnumId,
ProvinceId = c.ProvinceId,
CityId = c.CityId,
Address = c.Address,
Phone = c.Phone,
) for c in Organisations
]
return dict(Organisations = Ls)
и boot.py
файл для запуска API:
from flask import Flask
from flask_restplus import Api
from Controllers import OrganisationController
app = Flask(__name__)
api = Api(app)
api.add_resource(OrganisationController.List, '/organisation')
if __name__ == "__main__":
app.run ('127.0.0.1', 5000, True)
Не могли бы вы мне помочь?