本文整理汇总了Python中trytond.pool.Pool.create_all_using_magento_data方法的典型用法代码示例。如果您正苦于以下问题:Python Pool.create_all_using_magento_data方法的具体用法?Python Pool.create_all_using_magento_data怎么用?Python Pool.create_all_using_magento_data使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类trytond.pool.Pool
的用法示例。
在下文中一共展示了Pool.create_all_using_magento_data方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: import_websites
# 需要导入模块: from trytond.pool import Pool [as 别名]
# 或者: from trytond.pool.Pool import create_all_using_magento_data [as 别名]
def import_websites(cls, instances):
"""
Import the websites and their stores/view from magento
:param instances: Active record list of magento instance
"""
Website = Pool().get('magento.instance.website')
Store = Pool().get('magento.website.store')
StoreView = Pool().get('magento.store.store_view')
MagentoOrderState = Pool().get('magento.order_state')
if len(instances) != 1:
cls.raise_user_error('multiple_instances')
instance = instances[0]
with Transaction().set_context(magento_instance=instance.id):
# Import order states
with OrderConfig(
instance.url, instance.api_user, instance.api_key
) as order_config_api:
MagentoOrderState.create_all_using_magento_data(
order_config_api.get_states()
)
# Import websites
with Core(
instance.url, instance.api_user, instance.api_key
) as core_api:
websites = []
stores = []
mag_websites = core_api.websites()
# Create websites
for mag_website in mag_websites:
websites.append(Website.find_or_create(
instance, mag_website
))
for website in websites:
mag_stores = core_api.stores(
{'website_id': {'=': website.magento_id}}
)
# Create stores
for mag_store in mag_stores:
stores.append(Store.find_or_create(website, mag_store))
for store in stores:
mag_store_views = core_api.store_views(
{'group_id': {'=': store.magento_id}}
)
# Create store views
for mag_store_view in mag_store_views:
StoreView.find_or_create(store, mag_store_view)
示例2: import_magento_carriers
# 需要导入模块: from trytond.pool import Pool [as 别名]
# 或者: from trytond.pool.Pool import create_all_using_magento_data [as 别名]
def import_magento_carriers(cls, channels):
"""
Import carriers/shipping methods from magento for channels
:param channels: Active record list of magento channels
"""
InstanceCarrier = Pool().get("magento.instance.carrier")
for channel in channels:
channel.validate_magento_channel()
with Transaction().set_context({"current_channel": channel.id}):
with OrderConfig(
channel.magento_url, channel.magento_api_user, channel.magento_api_key
) as order_config_api:
mag_carriers = order_config_api.get_shipping_methods()
InstanceCarrier.create_all_using_magento_data(mag_carriers)
示例3: import_carriers
# 需要导入模块: from trytond.pool import Pool [as 别名]
# 或者: from trytond.pool.Pool import create_all_using_magento_data [as 别名]
def import_carriers(cls, instances):
"""
Import carriers/shipping methods from magento for instances
:param instances: Active record list of magento instances
"""
InstanceCarrier = Pool().get('magento.instance.carrier')
for instance in instances:
with Transaction().set_context({
'magento_instance': instance.id
}):
with OrderConfig(
instance.url, instance.api_user, instance.api_key
) as order_config_api:
mag_carriers = order_config_api.get_shipping_methods()
InstanceCarrier.create_all_using_magento_data(mag_carriers)
示例4: import_order_states
# 需要导入模块: from trytond.pool import Pool [as 别名]
# 或者: from trytond.pool.Pool import create_all_using_magento_data [as 别名]
def import_order_states(cls, instances):
"""
Import order states for instances
:param instances: List of active records of instances
"""
OrderState = Pool().get('magento.order_state')
for instance in instances:
Transaction().context.update({
'magento_instance': instance.id
})
# Import order states
with OrderConfig(
instance.url, instance.api_user, instance.api_key
) as order_config_api:
OrderState.create_all_using_magento_data(
order_config_api.get_states()
)