Я новичок в ItemLoaders.
У меня есть набор seen_ids
, в который я добавляю все product_ids
, которые я очищаю, чтобы я мог проверить, есть ли дубликаты, и пропустить его в ближайшее время.
Проблема в том, что я хочу сделать это в __init__
. Если это дубликат, я не хочу, чтобы какая-либо ссылка возвращалась, и я не могу явно вернуть None из __init__
. Как бы я это сделал?
seen_ids = set()
def __init__(self, item=None, selector=None, response=None, parent=None, product_id=None, **context):
if product_id in self.seen_ids:
return None
self.seen_ids.add(product_id)
super(GarmentLoader, self).__init__(item, selector, response, parent, **context)
item['retailer_sku'] = product_id
Но он выдает ошибку None, и если я ничего не возвращаю, он возвращает ссылку на объект и дальнейшие проверки не пройдены.