Skip to content Skip to sidebar Skip to footer

Getting A Typeerror Error In Django Project

I created a virtual environment for my new project, installed django and started the new project. However, whenever i run a line of code with manage.py i get this long error. PS D:

Solution 1:

It does seem NAME is being converted to pathlib.Path (WindowsPath) object instead of string which then cannot be used in Django in same way as os.path expects strings (Not 100% sure as did not investigate in depth)

So casting in string would be appropriate

'NAME': str(os.path.join(BASE_DIR, "db.sqlite3"))

Solution 2:

Make sure you really execute your command in the venv (you should see (venv))

If you are then as @iklinac said, this should fixe your issue:

'NAME': str(os.path.join(BASE_DIR, "db.sqlite3"))

Solution 3:

Also, for Django>=3.1, the path module is included in place of the os module. Therefore, use:

'NAME': str(BASE_DIR / 'db.sqlite3')

So, DB sqlite3 settings will look like this in settings.py.

DATABASES = {
'default': {
    'ENGINE': 'django.db.backends.sqlite3',
    'NAME': str(BASE_DIR / 'db.sqlite3')
    }
}

Post a Comment for "Getting A Typeerror Error In Django Project"