前面有一篇文章分析了如何使用2個分開的文件分別將外部數據導入到odoo對應的系統當中,如之前所說,是存在缺點的,現在測試將所有數據放入一個文件中將主表與從表的數據一次性導入,這樣可以很方便的利用odoo自身的功能,可以避免掉不必要的額外開發工作。具體步驟如下:
1.准備我們的csv文件。
文件的格式要求:主表字段一一羅列出來,從表字段格式特殊,是主表的one2many那個字段+從表具體字段,如 group_id/name.
那么在我們這兒的具體格式是:id,word,sequence,chinese_mean,lexicon_explain_ids/english_mean,lexicon_explain_ids/order,lexicon_explain_ids/raw_html_mean,lexicon_explain_ids/gram,lexicon_explain_ids/chinese_mean
2.具體行的數據設置
我們這兩個表之間的關系是一對多的關系,主表的一條數據可能對應從表的多條數據,按照我們正常的邏輯應該是主表的部分數據都是相同的,從表有幾條數據那么主表就有幾條,這樣理解沒有什么問題,但是每個系統的開發哲學不一樣,odoo在處理這一情況的時候,僅僅第一條數據要求主表是必須的,第二條之后的主表字段放置為空,從表部分正常放置數據。
大概的效果是如下圖所示:
這樣是不是可以使我們的文件大大減少不少數據呢,可以提高導入數據的效率。
3.准備導入工作。
選擇我們處理好的文件,點擊測試按鈕,系統提示"Everything seems valid". 然后繼續我們后面的工作。
到這里,算是對上篇導入外部數據的一個完善吧,也基本了解了對odoo數據導入導出的基本規則和應用,更多的是依賴了框架為我們提供的功能。但我們還會有我們自己個性化的需求,需要我們自己解析excel/csv文件,進行業務處理,下一步的工作就是,自己在odoo中如何解析文件的問題。