İçereği Atla
Menü
Bu soru işaretlendi
2 Cevaplar
3110 Görünümler

Hello All,


I have Odoo sh and a created a custom module.


In this module, I want to read in a CSV file from my local machine into a Dataframe:

df = pd.read_csv('path\test.csv', delimiter=';', encoding='utf-8')


When having Odoo running locally it works, but can someone tell me how to achieve this using Odoo sh?


Thanks!


Kind regards,


Nick

Avatar
Vazgeç
Üretici En İyi Yanıt

Thank you. 

I have created the module, but the data is dynamic and it updates every hour.

I need to be able to load in the data automatically.

Avatar
Vazgeç
En İyi Yanıt
  1. Create a Python module (e.g., my_module) in your Odoo add-ons folder.
  2. Inside the module, create a Python file (e.g., models.py) and define a model to store the data from the CSV file. For example:
  3. from odoo import models, fields 
  4. classMyModel(models.Model): 
    1. _name = 'my_module.my_model'
    2. name = fields.Char(string='Name') 
    3. email = fields.Char(string='Email') # Add more fields as needed
  5. Create a CSV file (e.g., data.csv) with the corresponding headers and data you want to import. Place it in the module's folder.

  6. In the same Python file (models.py), add a method to read the CSV file and create records in the model. For example:

import csv from odoo import models, api 

classMyModel(models.Model): # ...

@api.modeldefimport_data_from_csv(self): 

with open('my_module/data.csv', 'r') as file: 

​csv_data = csv.DictReader(file) 

​for row in csv_data: 

​self.create({ 'name': row['Name'], 'email': row['Email'], # Set values for other fields })



Avatar
Vazgeç
İlgili Gönderiler Cevaplar Görünümler Aktivite
0
May 22
2244
0
Mar 22
2660
2
Ağu 25
2549
1
Tem 25
961
1
Ağu 25
1151