【问题标题】:Django not showing images in editor (404 error)Django 未在编辑器中显示图像(404 错误)
【发布时间】:2022-01-18 02:15:28
【问题描述】:

我正在尝试创建帖子并将图片添加到此帖子中。我在 Django 3.0 中用于这个 Django-summernote。 图片上传到硬盘上的文件夹,但在编辑器中不显示。控制台显示 404 错误。 请给我建议如何解决它? 谢谢!

settings.py

STATIC_ROOT = os.path.join(BASE_DIR, 'static')
STATIC_URL = '/static/'

ADMIN_MEDIA_PREFIX = STATIC_URL + "grappelli/"
X_FRAME_OPTIONS = 'SAMEORIGIN'
SUMMERNOTE_THEME = 'bs4'  # Show summernote with Bootstrap4

MEDIA_ROOT = os.path.join(BASE_DIR, 'media')
MEDIA_URL = '/media/'

urls.py

urlpatterns = [
    path('admin/filebrowser/', site.urls),
    path('summernote/', include('django_summernote.urls')),
    path('admin/', admin.site.urls),
    path('', include('blog.urls')),
] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

models.py

class Post(models.Model):
    author = models.ForeignKey(settings.AUTH_USER_MODEL, on_delete=models.CASCADE)
    title = models.CharField(max_length=200)
    text = models.TextField()
    created_date = models.DateTimeField(default=timezone.now)
    published_date = models.DateTimeField(blank=True, null=True)
    image = models.ImageField(upload_to="", blank=True, null=True)

    def publish(self):
        self.published_date = timezone.now()
        self.save()

    def get_absolute_url(self):
        return "/api/article/%i/" % self.id

    def __str__(self):
        return self.title

screenshot from console

【问题讨论】:

    标签: python django django-admin django-urls summernote


    【解决方案1】:

    首先在 MEDIA_ROOT 中添加正斜杠: MEDIA_ROOT = os.path.join(BASE_DIR, 'media/')

    然后检查以下内容:

    1. DEBUG = True 在您的设置中
    2. 检查数据库中的 Post 模型表中的 image 字段是否有任何值(您是否运行过 makemigrations 和 migrate 命令?)
    3. 看看 INSTALLED_APPS 设置
    4. 如果它是上传文件也不是静态文件,那么在您的模板中写入:

    <img src="{{post_object.image.url}}" />

    并在视图上下文中添加 post_object

    【讨论】:

    • 您好!谢谢你的帮助。设置中的 DEBUG = True 有助于解决这种情况。但这将有助于本地使用。但是,当我将项目上传到托管并放置 DEBUG = False 时,我该怎么做?
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-12-06
    • 2011-01-06
    • 2017-02-13
    相关资源
    最近更新 更多