在运行时注入模板中的JavaScript URI不会渲染适当的S3后端URL-所有其他注射的管理URL呈现



我正在使用该软件包," django-wysiwyg-redactor",用于管理应用程序中的博客条目接口。当管理站点加载时,该软件包会为渲染丰富的文本编辑器所需的JavaScript文件注入少数源URL:

<script type="text/javascript" src="/static/redactor/jquery.min.js"></script>
<script type="text/javascript" src="/static/redactor/jquery-migrate.min.js"></script>
<script type="text/javascript" src="/static/redactor/redactor.min.js"></script>
...and so on...

我正在处理的项目正在使用Boto后端从S3存储桶中提供文件。Django注入的URL渲染admin页面正确渲染,附加了适当的S3数据以调用到存储桶中:

<script type="text/javascript" src="https://siteName.s3.amazonaws.com/admin/js/jquery.min.js?Signature=signatureKeyGoesHere&amp;Expires=1454163206&amp;AWSAccessKeyId=AWSAccessKeyIDGoesHere"></script>
<script type="text/javascript" src="https://siteName.s3.amazonaws.com/admin/js/jquery.init.js?Signature=signatureKeyGoesHere&amp;Expires=1454163206&amp;AWSAccessKeyId=AWSAccessKeyIDGoesHere"></script>
<script type="text/javascript" src="https://siteName.s3.amazonaws.com/admin/js/actions.min.js?Signature=signatureKeyGoesHere&amp;Expires=1454163206&amp;AWSAccessKeyId=AWSAccessKeyIDGoesHere"></script>

由于某种原因,编辑器URL无法正确渲染 - 附加了调用S3存储桶所需的数据。在本地开发过程中,我一切正常(同时仍在使用远程文件后端)

我在第一次部署期间也有一切正常。

就在今天晚上,我去了开发分支网站的困惑 - 该网站的确切代码基础是制作(在初次部署期间正在工作) - 并看到博客输入表并未呈现。我检查了浏览器内JavaScript控制台,发现与文件编辑器用途有关的少数资源负载故障消息:

Failed to load resource: the server responded with a status of 404 (Not Found) http://siteName.herokuapp.com/static/redactor/jquery.min.js
Failed to load resource: the server responded with a status of 404 (Not Found)    http://siteName.herokuapp.com/static/redactor/css/redactor.css
Failed to load resource: the server responded with a status of 404 (Not Found) http://siteName.herokuapp.com/static/redactor/css/django_admin.css
Failed to load resource: the server responded with a status of 404 (Not Found) http://siteName.herokuapp.com/static/redactor/jquery-migrate.min.js
Failed to load resource: the server responded with a status of 404 (Not Found) http://siteName.herokuapp.com/static/redactor/redactor.min.js

您可以看到,这些URL的格式与上面列出的格式不同。

S3存储桶中确实存在所有必要的文件。

我似乎无法弄清楚发生了什么。

任何帮助都非常感谢。

谢谢!

确保您的static_url设置为使用您的存储桶位置。

STATIC_URL = "https://siteName.s3.amazonaws.com/"

另请参阅此处:服务于S3

的Django的静态文件和媒体文件

通常,编辑器用户django表单媒体类。有关更多信息:https://docs.djangoproject.com/en/dev/topics/forms/media/

最新更新