为了账号安全,请及时绑定邮箱和手机立即绑定

可疑文件操作:无法在我的 django 项目文件夹中配置媒体根目录和基本目录

可疑文件操作:无法在我的 django 项目文件夹中配置媒体根目录和基本目录

人到中年有点甜 2023-08-08 10:29:51
我正在尝试将项目文件保存到媒体,然后在 url 中显示,到目前为止,我已经遵循了一些简单的技术来避免文件操作并将它们存储在媒体中我的setting.py文件->STATIC_ROOT = os.path.join(BASE_DIR, 'static')STATIC_URL = '/static/'MEDIA_ROOT = os.path.join(BASE_DIR, 'media')MEDIA_URL = '/media/'我的 models.py 文件模型字段->picture = models.ImageField(null=True, blank=True, upload_to = "photos")resume = models.FileField(null=True, blank=True, upload_to = "resume")然后它会正确存储并显示为媒体网址。我的 urls.py 文件->from django.contrib import adminfrom django.urls import path,includefrom django.conf.urls.static import staticfrom django.conf import settingsurlpatterns = [    path('admin/', admin.site.urls),    path('api/v1/cand/',include("core.urls"))] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)主要问题发生在我查询简历 pdf 文件时。它找不到 BASE_DIRfrom django.conf import BASE_DIRurl = serializer.data["resume"]file_name = url.split("/")[-1]data=ResumeParser(os.path.join(BASE_DIR,"/media/resume/",file_name)).get_extracted_data()return Response({**serializer.data, "data": data}, status = status.HTTP_200_OK)虽然当我使用绝对路径时它有效-> url = serializer.data["resume"]    file_name = url.split("/")[-1]    data=ResumeParser("/home/riyad/Desktop/kalkedev/services/candidate","media/resume/",file_name).get_extracted_data()    return Response({**serializer.data, "data": data}, status = status.HTTP_200_好的)这是一个 django 问题吗,因为我之前一直在处理这个 issur 并采取简单的方法(默认 base_dir)来存储文件。需要快速找到答案。
查看完整描述

3 回答

?
喵喵时光机

TA贡献1846条经验 获得超7个赞

不,不是这样,我发布后查看它,我发布了错误的代码,它应该是 django.conf 导入设置。主要问题是它找不到设置。BASE_DIR 即使我正确导入它......它什么也不返回。



查看完整回答
反对 回复 2023-08-08
?
慕的地8271018

TA贡献1796条经验 获得超4个赞

实际上settings.BASE_DIR是同步的..你必须这样写路径才能使其异步

path = settings.BASE_DIR + "文件路径"

那么你可以将这个路径添加到任何函数中,除非直接添加settings.BASE_DIR是行不通的。


查看完整回答
反对 回复 2023-08-08
?
心有法竹

TA贡献1866条经验 获得超5个赞

BASE_DIR 在设置中,而不是 django.conf

from django.conf import settings
settings.BASE_DIR

https://img1.sycdn.imooc.com//64d1a8eb0001569d06220317.jpg

查看完整回答
反对 回复 2023-08-08
  • 3 回答
  • 0 关注
  • 67 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信