コンテンツへスキップ
メニュー
この質問にフラグが付けられました
2 返信
11898 ビュー

I have a CSV with some data related to products and a Custom Module. How can I make my custom module to store the data into the product table (database) when the module gets installed. 

Assume that the CSV (with product data) is also included in module. If some fields from CSV are not present in the product table, it should get created automatically in the table.

Can someone please help me to understand how the CSV reading data works and how can I achieve this?




アバター
破棄
最善の回答

Take a look at the l10n_uk module.  This module imports a CSV file to populate UK Counties.

https://github.com/odoo/odoo/tree/10.0/addons/l10n_uk


You can see in the __manifest__ file of the module the direction to import the file:

'data': [ 
   'data/res.country.state.csv',
],

Also at https://github.com/odoo/odoo/blob/10.0/addons/l10n_uk/__manifest__.py#L26


The CSV file looks like this:

"id","country_id:id","code","name"

"state_uk_1","base.uk","A1","Aberdeenshire"
"state_uk_2","base.uk","A5","Angus"
"state_uk_3","base.uk","A7","Argyll"
"state_uk_4","base.uk","A9","Avon"
"state_uk_5","base.uk","B1","Ayrshire"
"state_uk_6","base.uk","B3","Banffshire"
"state_uk_7","base.uk","B5","Bedfordshire"
"state_uk_8","base.uk","B7","Berkshire"
"state_uk_9","base.uk","B9","Berwickshire"
"state_uk_10","base.uk","C1","Buckinghamshire"
"state_uk_11","base.uk","C3","Caithness"

Also at https://github.com/odoo/odoo/blob/10.0/addons/l10n_uk/data/res.country.state.csv


Which imports these records into Odoo:



Also, see:

https://www.odoo.com/documentation/10.0/reference/data.html#csv-data-files


アバター
破棄
著作者 最善の回答

Hi Ray,

Thanks for your kind help. This worked for me well. I just exported the csv of my custom model. Then I put that csv in module with some other data, specified the location in __manifest__.file. Finally installed the module on a new database and all worked fine.

アバター
破棄
関連投稿 返信 ビュー 活動
1
11月 24
20298
1
9月 23
3112
3
5月 23
5688
7
4月 23
49074
1
12月 22
7910