odoo/bin/csv_import

32 lines
855 B
Python
Executable File

#!/opt/odoo/bin/python
import base64
import click
import click_odoo
TODO = [
("product.category.csv", "Product categories"),
("product.tag.csv", "Product tags"),
("res.partner.csv", "Partners"),
("product.product.csv", "Products"),
]
@click.command()
@click_odoo.env_options(default_log_level="error")
def main(env):
for filename, pattern_name in TODO:
with open(f"csv/{filename}", "rb") as f:
pattern = env["pattern.config"].search([("name", "=", pattern_name)])
wizard = env["import.pattern.wizard"].create(
{
"pattern_config_id": pattern.id,
"import_file": base64.b64encode(f.read()),
"filename": filename,
}
)
wizard.action_launch_import()
if __name__ == "__main__":
main()