【问题标题】:How do I modify my Django settings for AWS Static files to accoomade for django summernote如何修改 AWS 静态文件的 Django 设置以适应 django summernote
【发布时间】:2019-09-26 19:17:47
【问题描述】:

我使用 django-summernote 作为所见即所得的编辑器。编辑器在我的开发阶段工作正常。我的 Django 设置在哪里使用下面的代码

STATIC_URL = '/static/'
STATICFILES_DIRS = [os.path.join(BASE_DIR, 'static')]
STATIC_ROOT = os.path.join(BASE_DIR, 'staticfiles')

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

但是,当我切换到将静态文件保存在 AWS 上的生产环境时。我没有看到summernote 所见即所得的编辑器。事实上整个文本字段都消失了。此外,我的静态文件与其他所有文件完美配合。我的 aws 上的 style.css 文件与我的开发阶段完全相同,下面是我的 AWS 设置

AWS_DEFAULT_ACL = None
STATICFILES_DIRS = [
    os.path.join(BASE_DIR, 'static'),
]
DEFAULT_FILE_STORAGE = 'aws_storage_classes.MediaStorage'
AWS_STORAGE_BUCKET_NAME = 'cool-media-8axodgh6d'
STATICFILES_STORAGE = 'aws_storage_classes.StaticStorage'
AWS_S3_OBJECT_PARAMETERS = {
    'CacheControl': 'max-age=86400',
}

AWS_S3_DOMAIN = "%s.s3.amazonaws.com" % AWS_STORAGE_BUCKET_NAME

STATIC_URL = 'https://%s/static/' % AWS_S3_DOMAIN
MEDIA_URL = 'https://%s/media/' % AWS_S3_DOMAIN

ADMIN_MEDIA_PREFIX = STATIC_URL + 'admin/'

我该如何解决这个问题。如果您需要更多信息,请告诉我。我很乐意提供

【问题讨论】:

  • 我认为你需要检查浏览器的网络部分,看看css和js是否为summernote正确加载。
  • @ruddra 感谢帮助的好友。 summernote 似乎有一个静态文件。我可以收集静态并获取它,但我手动将其复制并粘贴到我的 aws 静态文件中,这样就完成了。如果您想将此作为答案发布,我可以选择此作为正确答案。再次感谢

标签: django python-3.x amazon-web-services wysiwyg django-wysiwyg


【解决方案1】:

我认为您需要检查浏览器的网络部分,以检查所需的 css 和 js 是否正确加载。在FirefoxChrome 上有关于如何访问网络属性的文档。

如果您使用django-storage 之类的工具,则运行python manage.py collectstatic 通常足以将这些静态文件推送到S3 中(或者手动复制粘贴文件也可以,但不推荐)。

【讨论】:

  • 为什么不推荐复制粘贴aws文件夹中的文件
  • 好吧,假设你更新了 django-summernote 或任何库,那么 js 文件也会更新。如果您手动更新文件,那么这将是一个麻烦且难以维护。 :) 我一直更喜欢自动化系统。
猜你喜欢
  • 2020-06-19
  • 1970-01-01
  • 2022-01-12
  • 2019-09-27
  • 1970-01-01
  • 2021-01-17
  • 2014-06-02
  • 2014-05-05
  • 2013-01-05
相关资源
最近更新 更多