1. 程式人生 > 其它 >odoo14開發之指令碼自動生成程式碼

odoo14開發之指令碼自動生成程式碼

通過解析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()

最後生成效果