Я пытаюсь создать простую лямбда-функцию AWS, чтобы получить несколько строк из Amazon RDS (MySQL db) и вернуть ее в формате json.
Если я пытаюсь добавить экземпляр объекта, то получаю ошибкуэтот объект типа XXX не сериализуем.Если я сделаю что-то вроде ниже, я получу только последнюю запись из БД.(Это не похоже на то, что показано в https://hackersandslackers.com/create-a-rest-api-endpoint-using-aws-lambda/).
def save_events(event):
result = []
conn = pymysql.connect(rds_host,user=name,passwd=password,db=db_name,connect_timeout=5)
with conn:
cur = conn.cursor()
cur.execute("select * from tblEmployees")
rows = cur.fetchall()
for row in rows:
employee = Employee(row)
data['Id'] = employee.id
data['Name']= employee.name
result.append(data)
return result
def main(event, context):
data = save_events(event)
return {
"StatusCode":200,
"Employee": data
}
Я понимаю, что контекст переменной 'data' изменяет время выполнения и влияет на result.append (). У меня 4 записи в таблице tblEmployeesВыходные данные выше получают 4 записи в результате, но все четыре записи одинаковы (и соответствуют последней записи в БД). Json.dumps () не работал, так как данные в формате Unicode. Iя уже пробовал .toJSON () и byteify (), и это не сработало. Любая помощь?