Я разрабатываю rest-api, используя python-eve. Мой объект содержит URL, описание и изображение. Пользователи могут либо вставлять, либо просматривать товар (для вставки пользователь просто добавляет URL-адрес, и генерируются описание и изображение).
Во избежание повторных обновлений - когда пользователь вставляет URL-адрес, который уже существует, используя запрос POST, я хотел бы перенаправить его на URL-адрес элемента, соответствующего этому URL-адресу. Для этого я добавил этот код:
def pre_post_callback(request, lookup):
prev_object = current_app.data.driver.db['products'].find_one({"url":lookup.values['url']})
if prev_object:
# here I would like to redirect the user to the /product/id of the product corresponding.
app.on_pre_POST += pre_post_callback
Однако при добавлении одного и того же URL-адреса дважды я продолжаю добавлять (переопределять) существующий элемент.
Как перенаправить пользователя к уже существующему продукту из хука обратного вызова до и после публикации?
lookup
? документы говорят следующее:Callbacks will receive the resource being requested, the original flask.request object and the current lookup dictionary as arguments (only exception being the on_pre_POST hook which does not provide a lookup argument).
- person HassenPy   schedule 28.10.2016if prev_object
- person HassenPy   schedule 28.10.2016