当我尝试在 django 中使用 运行 makemigrations 命令时,它给了我一个错误

When i try to run makemigrations command in django it gave me an error

当我尝试 运行 在 django 中执行 makemigrations 命令时,它给了我一个错误:

TypeError: _getfullpathname: path should be string, bytes or os.PathLike, not list

帮我解决这个问题。

这是我的静态根和媒体根所有内容:

# settings.py
STATIC_URL = '/static/'
MEDIA_URL = '/media/'
STATICFILES_DIRS = [os.path.join(BASE_DIR, 'static')]
STATIC_ROOT = [os.path.join(BASE_DIR, 'static_root')]
MEDIA_ROOT = [os.path.join(BASE_DIR, 'media_root')]

STATIC_ROOTMEDIA_ROOT 不应该是一个列表,这就是 Django 抱怨的原因。你应该这样定义它们:

STATIC_URL = '/static/'
MEDIA_URL = '/media/'
STATICFILES_DIRS = [os.path.join(BASE_DIR, 'static')]
STATIC_ROOT = os.path.join(BASE_DIR, 'static_root')
MEDIA_ROOT = os.path.join(BASE_DIR, 'media_root')

你可以查看here and here