8.2. Item Processors

8.2.1. ItemKeysMergeIntoListProcessor

class easydata.processors.item.ItemKeysMergeIntoListProcessor(new_item_key: str, item_keys: List[str], preserve_original=False, ignore_none=True)[source]

Bases: easydata.processors.item.ItemBaseProcessor

ItemKeysMergeIntoDictProcessor creates a list of values under a new key on a basis of specified keys in item dictionary.

Parameters

new_item_key
item_keys
preserve_original
ignore_none

8.2.2. ItemKeysMergeProcessor

class easydata.processors.item.ItemKeysMergeProcessor(new_item_key: str, item_keys: List[str], preserve_original=False, separator: str = ' ')[source]

Bases: easydata.processors.item.ItemKeysMergeIntoListProcessor

Parameters

new_item_key
preserve_original
separator

8.2.3. ItemKeysMergeIntoDictProcessor

class easydata.processors.item.ItemKeysMergeIntoDictProcessor(new_item_key: str, item_keys: List[str], preserve_original=False, ignore_none=True)[source]

Bases: easydata.processors.item.ItemKeysMergeIntoListProcessor

ItemKeysMergeIntoDictProcessor creates a dictionary under a new key on a basis of specified keys in item dictionary.

Parameters

new_item_key
item_keys
preserve_original
ignore_none

8.2.4. ItemValueToStrProcessor

class easydata.processors.item.ItemValueToStrProcessor(item_keys: List[str], none_as_empty_string: bool = True)[source]

Bases: easydata.processors.item.ItemBaseProcessor

ItemValueToStrProcessor converts values from various types to str.

Parameters

item_keys
none_as_empty_string

8.2.5. ItemRemoveKeysProcessor

class easydata.processors.item.ItemRemoveKeysProcessor(item_keys: List[str])[source]

Bases: easydata.processors.item.ItemBaseProcessor

ItemRemoveKeysProcessor removes keys from item dictionary.

Parameters

item_keys

8.2.6. ItemDiscountProcessor

class easydata.processors.item.ItemDiscountProcessor(item_price_key: Optional[str] = None, item_sale_price_key: Optional[str] = None, item_discount_key: Optional[str] = None, decimals: Optional[int] = None, no_decimals: Optional[bool] = None, remove_item_sale_price_key: Optional[bool] = None)[source]

Bases: easydata.processors.item.ItemBaseProcessor

ItemDiscountProcessor looks for parsed price and sale_price in item dictionary and calculates discount percentage between those two values. Finally it creates a new discount key in item dictionary and attaches discount value to it. If our price and sale price values live under different keys under item dictionary than default ones price and sale_price, then we can through parameters, change those default values in order to suit our needs.

All parameters that ItemDiscountProcessor accepts are listed bellow:

Parameters

item_price_key

Note

Default value of item_price_key parameter can be defined through a config variable ED_ITEM_DISCOUNT_ITEM_PRICE_KEY in a config file or a model.

item_sale_price_key

Note

Default value of item_sale_price_key parameter can be defined through a config variable ED_ITEM_DISCOUNT_ITEM_SALE_PRICE_KEY in a config file or a model.

item_discount_key

Note

Default value of item_discount_key parameter can be defined through a config variable ED_ITEM_DISCOUNT_ITEM_DISCOUNT_KEY in a config file or a model.

decimals

Note

Default value of decimals parameter can be defined through a config variable ED_ITEM_DISCOUNT_DECIMALS in a config file or a model.

no_decimals

Note

Default value of no_decimals parameter can be defined through a config variable ED_ITEM_DISCOUNT_NO_DECIMALS in a config file or a model.

remove_item_sale_price_key

Note

Default value of remove_item_sale_price_key parameter can be defined through a config variable ED_ITEM_DISCOUNT_REMOVE_ITEM_SALE_PRICE_KEY in a config file or a model.