odoo14开发之脚本自动生成代码
阅读原文时间:2023年07月10日阅读:1

通过解析excel,自动生成odoo代码实现

一、首先做一个字段配置的excel模板

第二步、读取excel里面的模板,并写入到txt文件里

逻辑代码:

**# -*- coding: utf-8 -*-

import xlrd
import sys
from importlib import reload

reload(sys)
excel_data = 'E:\\odoo14\\odoo14\\myaddons\\demo_data.xlsx'
excel_obj = xlrd.open_workbook(excel_data)
sh = excel_obj.sheets()[0] # 取第一个sheet页
for row in range(1, sh.nrows):
row_n = row + 1
field1 = sh.cell(row, 0).value # 逻辑名
field2 = sh.cell(row, 1).value # 字段类型
field3 = sh.cell(row, 2).value # 模型名
field4 = sh.cell(row, 3).value # 显示名

# 如果一个表里面存在同一模型的 Many2many字段,需要指定中间表,下面逻辑得修改一下  
if field2 in \['Many2one', 'Many2many'\]:  
    content = '%s = fields.%s(%s,string=u"%s")\\r\\n' % (field1, field2, field3, field4)  
else:  
    content = '%s = fields.%s(string=u"%s")\\r\\n' % (field1, field2, field4)  
f = open('E:\\\\odoo14\\\\odoo14\\\\myaddons\\\\demo\_data.txt', 'a+', encoding='utf-8'****)  
f.write(content)  
f.seek(0)  
f.close()** 

最后生成效果