【问题标题】:Separate media settings for each app in djangodjango 中每个应用程序的单独媒体设置
【发布时间】:2020-07-09 21:51:24
【问题描述】:

我正在构建一个基于 django 的类似博客的网站,它目前有一个应用程序。它包含一个媒体文件夹,其中包含用户上传的图像。但是,MEDIA_URL 和 MEDIA_ROOT 是在主 settings.py 文件中指定的。

但在未来,会有更多包含更多媒体的应用,因此我希望每个应用都有单独的 MEDIA_URL 和设置。

我尝试在 apps.py 文件中分别编写 MEDIA_ROOT 和 MEDIA_URL,但是从主 settings.py 文件中删除它会导致错误。

我也尝试过使用 FileSystemStorage,但即便如此,我也需要在 settings.py 文件中有一个 MEDIA_URLS。

如果您需要更多详细信息,请告诉我。 任何帮助表示赞赏,谢谢。

【问题讨论】:

    标签: django django-media


    【解决方案1】:

    也许,您可以在 MEDIA_ROOT 中为不同的模型使用不同的文件夹。 例如:

    class MyModel(models.Model):
        file = models.FileField(upload_to='my_model')
    

    当您通过 MyModel admin 上传新文件时,在 MEDIA 文件夹中将创建一个名为 my_model 的文件夹,并且上传的文件将在那里。

    【讨论】:

    • 感谢您的方法!这是专业网站使用的标准方法吗?
    • 我不知道别人是怎么做的,但这是我的方法
    猜你喜欢
    • 2023-03-31
    • 2017-11-16
    • 1970-01-01
    • 2011-07-21
    • 2014-04-18
    • 2011-03-17
    • 2021-12-23
    • 2011-09-26
    相关资源
    最近更新 更多