Я предполагаю, что ваша конечная точка REST, в которой вы хотите POST, находится в том же приложении с флягой. Хорошая практика заключается в том, чтобы отделить бизнес-логику в конечных точках REST и поделиться кодом по всему вашему приложению.
В моем случае, я обычно создаю отдельные PY файлов (их называли услуги) и перемещать бизнес-логику там:
# inventory_services.py
def delete_item(id, data):
pass
# ... business logic here
Затем вызовите этот метод из вашего REST конечной точки, где вы POST данных для:
from inventory_services import delete_item
@api.route('/inventory/delete-item', methods=['POST'])
def delete_item_api():
posted_data = request.get_json()
delete_item(posted_data.id, posted_data.data)
Используйте те же методы обслуживания в своих методах крючками SQL алхимии:
from inventory_services import delete_item
@event.listens_for(MyModel, 'after_insert')
def do_stuff(mapper, connection, target):
delete_item(id, data)
Основная идея здесь - переместить код в ваших методах api на другие простые функции, чтобы они были доступны для всего вашего приложения.
Кажется, что у вас уже есть это. ваш метод do_stuff будет запущен после вставки. Вы можете сделать то же самое с '' after_update'' и '' after_delete''. Или ваш вопрос о том, как сделать почтовый запрос в python? Для этого вы можете использовать запросы, например (http://docs.python-requests.org/en/master/). – AArias
@AArias да, я понял это, но я также хочу знать, есть ли библиотека, как крючки для отдыха в колбе тоже. – Zeeshan