我在使用django-ckeditor时收到几个404错误。
This is what my static folder looks like
第一个是位于static/boot/ckeditor/ckeditor的ckeditor.js文件,我收到的错误如下:"GET /static/ckeditor.js HTTP/1.1" 404 1657
下面,我收到了一些关于文件夹中实际存在的其他文档的错误信息:
"GET .../AGAPE/static/boot/ckeditor/ckeditor/config.js?t=JB9C HTTP/1.1" 404 2494
"GET .../AGAPE/static/boot/ckeditor/ckeditor/skins/moono-lisa/editor.css?t=JB9C HTTP/1.1" 404 2548
"GET .../AGAPE/static/boot/ckeditor/ckeditor/lang/nl.js?t=JB9C HTTP/1.1" 404 2497对于最后三个,我认为错误是由文件名末尾添加的字符引起的,例如?t=JB9C,但我不明白为什么要添加这些字符。
另外,我的settings.py文件:
STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(BASE_DIR, 'static/boot/')
STATIC_FILES_DIRS = [
os.path.join(BASE_DIR, 'static'),
os.path.join(BASE_DIR, 'boot'),]
MEDIA_ROOT=os.path.join(os.path.dirname(BASE_DIR), 'media')
MEDIA_URL="/media/"
CKEDITOR_BASEPATH = os.path.join(os.path.dirname(STATIC_ROOT), 'ckeditor/ckeditor/')
CKEDITOR_UPLOAD_PATH = "uploads/"
CKEDIT_IMAGE_BACKEND = 'pillow'
CKEDITOR_CONFIGS = {
'default': {
'toolbar':[ ['CodeSnippet', ], ],
'height': 400,
'width': 900,
'removePlugins': 'stylesheetparser',
'extraPlugins': 'codesnippet',
},
}和相关的models.py文件(在相关的应用程序中):
from django.db import models
from django.contrib.auth.models import User
from ckeditor_uploader.fields import RichTextUploadingField
from ckeditor.fields import RichTextField
STATUS = (
(0,"Draft"),
(1,"Publish")
)
class Post(models.Model):
title = models.CharField(max_length=200, unique=True)
cover = models.ImageField(upload_to='images/')
author = models.ForeignKey(User, on_delete= models.CASCADE,related_name='blog_posts')
slug = models.SlugField(null=False, unique=True)
def get_absolute_url(self):
return reverse('post_detail', kwargs={'slug': self.slug})
updated_on = models.DateTimeField(auto_now= True)
content = RichTextUploadingField(blank=True)
created_on = models.DateTimeField(auto_now_add=True)
status = models.IntegerField(choices=STATUS, default=0)
class Meta:
ordering = ['-created_on']
def __str__(self):
return self.titleadmin.py文件(在相关应用程序中):
from django.contrib import admin
from .models import Post
class PostAdmin(admin.ModelAdmin):
list_display = ('title', 'status','created_on')
list_filter = ("status",)
search_fields = ['title', 'content']
prepopulated_fields = {'slug': ('title',)}
class Media:
js = ('ckeditor.js',)
# do not write '/static/ckeditor.js' as Django automatically looks
# in the static folder
admin.site.register(Post, PostAdmin)urls.py文件(全局):
from django.conf import settings
from django.conf.urls import url
from django.contrib import admin
from django.conf.urls import include
from django.urls import include, path
from django.conf.urls.static import static
from AGAPE import views
from articles import views
from django.views.generic.base import TemplateView
from django.conf.urls.i18n import i18n_patterns
from django.utils.translation import ugettext_lazy as _
urlpatterns = i18n_patterns(
url(r'^$', TemplateView.as_view(template_name='home.html'), name='home'),
url(r'^i18n/', include('django.conf.urls.i18n')),
path('i8n/', include('django_translation_flags.urls')),
url(r'^home', TemplateView.as_view(template_name='home.html'), name='home'),
url(r'^overagape', TemplateView.as_view(template_name='overagape.html'),name='over_agape'),
url(r'^QUIZ/', include('QUIZ.urls')),
url(r'^admin/', admin.site.urls),
url(r'^nested_admin/', include('nested_admin.urls')),
url(r'^aspecteen', TemplateView.as_view(template_name='aspecteen.html'), name='aspecteen'),
url(r'^aspecttwee', TemplateView.as_view(template_name='aspecttwee.html'), name='aspecttwee'),
url(r'^aspectdrie',TemplateView.as_view(template_name='aspectdrie.html'),name='aspectdrie'),
url(r'^aspectvier',TemplateView.as_view(template_name='aspectvier.html'),name='aspectvier'),
url(r'^aspectvijf',TemplateView.as_view(template_name='aspectvijf.html'),name='aspectvijf'),
url(r'^articles/', include('articles.urls')),
url(r'^ckeditor/', include ('ckeditor_uploader.urls')),
) + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)发布于 2020-07-11 19:17:43
我也有同样的问题,问题是关于我在模板中调用的ckeditor脚本。
以前是这样的,
<script type="text/javascript" src="{% static ' ckeditor/ckeditor-init.js' %}"></script>
<script type="text/javascript" src="{% static ' ckeditor/ckeditor/ckeditor.js' %}"></script>而撇号符号和编者路径之间的空格使django将其称为;
"GET /static/%20ckeditor/ckeditor-init.js HTTP/1.1" 404 1706
"GET /static/%20ckeditor/ckeditor/ckeditor.js HTTP/1.1" 404 1718删除空间后出现问题。在某些情况下可能会有帮助。
https://stackoverflow.com/questions/62302289
复制相似问题