IndexError: list index out of range Django и Postgresql DB

Я схожу с ума от этой проблемы, так что, пожалуйста, помогите хахахахаха.

Ошибка, которую я имею - IndexError: list index out of range, когда я пытаюсь сделать вставку в таблицу в моей БД.

Я пытаюсь вставить документ svc, содержащий только 30 строк.

есть идеи?

class CamerasBaleares(TimeStampedModel, SoftDeletableModel):
        title = models.CharField(max_length=50, blank=True)
        lat = models.FloatField(blank=True, null=True)
        lon = models.FloatField(blank=True, null=True)
        url = models.URLField(blank=True)
        is_removed = models.BooleanField(default=False)
        
     
        def __str__(self):
            return self.title

        def  load_data(self):
            import csv
            self.file = open(r'/home/elsamex/Documentos/CamarasBaleares.csv')
            self.row = csv.reader(self.file, delimiter='"')
            self.list = list(self.row)
            self.tupla = tuple(self.list)
        

        def  save_data(self):
            import psycopg2
            self.connection = psycopg2.connect("dbname=camarasdgt user=******* password=++++++++")
            self.cursor = self.connection.cursor()
            self.cursor.executemany ("INSERT INTO api_camerasbaleares (title, lat, lon, url) VALUES (%s, %s, %s, %s)", self.tupla)
            self.connection.commit()
            self.cursor.close()
            self.connection.close()
        
        def select (self):
            self.load_data()
            self.save_data()
            self.cursor = self.connection.cursor()
            self.cursor.execute("""SELECT * FROM api_camerasbaleares""")
            self.rows = self.cursor.fetchall()
            self.cursor.close()
            self.connection.close()
            return self.rows
    
ins_db= CamerasBaleares()
ins_db.load_data()
ins_db.save_data()
ins_db.select()

Здесь можно найти полную ошибку

(venv) elsamex@trabajo:~/API_Camaras_DGT/CamarasDgt$ python manage.py makemigrations
Traceback (most recent call last):
  File "manage.py", line 22, in <module>
    main()
  File "manage.py", line 18, in main
    execute_from_command_line(sys.argv)
  File "/home/elsamex/API_Camaras_DGT/venv/lib/python3.8/site-packages/django/core/management/__init__.py", line 446, in execute_from_command_line
    utility.execute()
  File "/home/elsamex/API_Camaras_DGT/venv/lib/python3.8/site-packages/django/core/management/__init__.py", line 420, in execute
    django.setup()
  File "/home/elsamex/API_Camaras_DGT/venv/lib/python3.8/site-packages/django/__init__.py", line 24, in setup
    apps.populate(settings.INSTALLED_APPS)
  File "/home/elsamex/API_Camaras_DGT/venv/lib/python3.8/site-packages/django/apps/registry.py", line 124, in populate
    app_config.ready()
  File "/home/elsamex/API_Camaras_DGT/venv/lib/python3.8/site-packages/django/contrib/admin/apps.py", line 27, in ready
    self.module.autodiscover()
  File "/home/elsamex/API_Camaras_DGT/venv/lib/python3.8/site-packages/django/contrib/admin/__init__.py", line 50, in autodiscover
    autodiscover_modules("admin", register_to=site)
  File "/home/elsamex/API_Camaras_DGT/venv/lib/python3.8/site-packages/django/utils/module_loading.py", line 58, in autodiscover_modules
    import_module("%s.%s" % (app_config.name, module_to_search))
  File "/usr/lib/python3.8/importlib/__init__.py", line 127, in import_module
    return _bootstrap._gcd_import(name[level:], package, level)
  File "<frozen importlib._bootstrap>", line 1014, in _gcd_import
  File "<frozen importlib._bootstrap>", line 991, in _find_and_load
  File "<frozen importlib._bootstrap>", line 975, in _find_and_load_unlocked
  File "<frozen importlib._bootstrap>", line 671, in _load_unlocked
  File "<frozen importlib._bootstrap_external>", line 848, in exec_module
  File "<frozen importlib._bootstrap>", line 219, in _call_with_frames_removed
  File "/home/elsamex/API_Camaras_DGT/CamarasDgt/api/admin.py", line 10, in <module>
    from api.Cameras_Baleares.models import CamerasBaleares
  File "/home/elsamex/API_Camaras_DGT/CamarasDgt/api/Cameras_Baleares/models.py", line 45, in <module>
    ins_db.save_data()
  File "/home/elsamex/API_Camaras_DGT/CamarasDgt/api/Cameras_Baleares/models.py", line 28, in save_data
    self.cursor.executemany ("INSERT INTO api_camerasbaleares (title, lat, lon, url) VALUES (%s, %s, %s, %s)", self.tupla)
IndexError: list index out of range

Я наконец-то решил, что проблема была в формате csv...

спасибо за все комментарии.

Вернуться на верх