上传时媒体文件最终位于 pycharm 子目录中
Media files end up in in a pycharm subdirectory when uploading
我正在 Windows 系统上构建 Django 应用程序,用户应该可以在其中上传图像。
但不知何故,我上传的文件最终出现在我的 Program Files 目录中:
C:\Program Files (x86)\JetBrains\PyCharm Community Edition 4.5.1\jre\jre\bin\WebApp\media\TestData\static\images
我只是不明白为什么我会得到这个结果。我想将这些图像存储在另一个磁盘上,例如:
G:\General\Users\Me\WebApp\media
我一直在尝试改变我的 MEDIA_ROOT 但没有成功。我什至不确定这是不是问题所在,或者我是否不完全理解 Django 上传的工作原理。
这些是我的设置:
import os
BASE_DIR = os.path.abspath(os.path.dirname(os.path.dirname('__file__')))
# Static files (CSS, JavaScript, Images)
# https://docs.djangoproject.com/en/1.8/howto/static-files/
STATIC_ROOT = os.path.join(BASE_DIR, 'static')
STATIC_URL = '/static/'
MEDIA_ROOT = os.path.join(BASE_DIR, 'media/')
MEDIA_URL = '/media/'
STATICFILES_DIRS = (
# Put strings here, like "/home/html/static" or "C:/www/django/static".
# Always use forward slashes, even on Windows.
os.path.join(BASE_DIR, 'staticfiles'),
)
不知道这是否重要,但我正在使用带有 Imagefield 的模型中的 ModelForm。
您的 BASE_DIR
应如下所示:
os.path.dirname(os.path.dirname(__file__))
我正在 Windows 系统上构建 Django 应用程序,用户应该可以在其中上传图像。 但不知何故,我上传的文件最终出现在我的 Program Files 目录中:
C:\Program Files (x86)\JetBrains\PyCharm Community Edition 4.5.1\jre\jre\bin\WebApp\media\TestData\static\images
我只是不明白为什么我会得到这个结果。我想将这些图像存储在另一个磁盘上,例如:
G:\General\Users\Me\WebApp\media
我一直在尝试改变我的 MEDIA_ROOT 但没有成功。我什至不确定这是不是问题所在,或者我是否不完全理解 Django 上传的工作原理。
这些是我的设置:
import os
BASE_DIR = os.path.abspath(os.path.dirname(os.path.dirname('__file__')))
# Static files (CSS, JavaScript, Images)
# https://docs.djangoproject.com/en/1.8/howto/static-files/
STATIC_ROOT = os.path.join(BASE_DIR, 'static')
STATIC_URL = '/static/'
MEDIA_ROOT = os.path.join(BASE_DIR, 'media/')
MEDIA_URL = '/media/'
STATICFILES_DIRS = (
# Put strings here, like "/home/html/static" or "C:/www/django/static".
# Always use forward slashes, even on Windows.
os.path.join(BASE_DIR, 'staticfiles'),
)
不知道这是否重要,但我正在使用带有 Imagefield 的模型中的 ModelForm。
您的 BASE_DIR
应如下所示:
os.path.dirname(os.path.dirname(__file__))