Ошибка механизма развертывания Django и Digital Ocean

У меня есть приложение Django, развернутое в Digital Ocean, и все это работает с моей базой данных и всем остальным. Теперь я создал этот скрипт, который я хочу использовать для заполнения моей базы данных из некоторых CSV-файлов, которые у меня есть. Всякий раз, когда я запускаю скрипт, я получаю эту ошибку:

django.core.exceptions.ImproperlyConfigured: settings.DATABASES is improperly configured. Please supply the ENGINE value. Check settings documentation for more details.

То есть он не может найти/использовать мою базу данных из скрипта?

Мой сценарий:

import os
import csv
import django
from datetime import datetime

os.environ.setdefault('DEVELOPMENT_MODE', 'False')
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'SpotOn.settings')
os.environ["DATABASE_URL"] = 'postgresql://doadmin:password@route:25060/db_name?sslmode=require'
django.setup()

from WebshopDashboard.models import Webshop, Product

def upload_data_from_csv(csv_filepath, webshop_name, default_date_str):
    webshop, created = Webshop.objects.get_or_create(name=webshop_name)
    print(f"{'Created' if created else 'Using existing'} webshop: {webshop_name}")

    # Convert the default_date_str to a date object
    default_date = datetime.strptime(default_date_str, '%Y-%m-%d').date()

    with open(csv_filepath, mode='r', encoding='utf-8') as file:
        reader = csv.DictReader(file)
        for row in reader:
            product_name = row['Name'].strip()
            price = Product.parse_price(row['Price'].strip())
            compare_price = Product.parse_price(row['Compare Price'].strip())
            specified_date_str = row.get('Specified Date', '').strip()
            # If a specified date is provided in the CSV, use it; otherwise, use the default_date
            specified_date = datetime.strptime(specified_date_str, '%Y-%m-%d').date() if specified_date_str else default_date

            product, created = Product.objects.update_or_create(
                name=product_name,
                webshop_name=webshop,
                defaults={
                    'price': price,
                    'compare_price': compare_price,
                    'default_date': specified_date
                }
            )

            print(f"{'Added' if created else 'Updated'} product: {product_name}")


csv_file_path = 'shop_data_2024-03-29.csv'
date = csv_file_path.split('_')[-1].split('.')[0]
webshop_name = "Shop 1"
upload_data_from_csv(csv_file_path, webshop_name, date)
django.setup()

Который локально работает нормально, учитывая мою локальную базу данных, показанную в settings.py ниже, но при развертывании он продолжает говорить мне об этой проблеме с движком? В DATABASE_URL я просто вставил пропуски, но он предоставлен мне Digital Ocean, так что я не думаю, что я "допустил ошибку" там. Вот мой файл settings.py:

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