Пожалуйста, обратите внимание, что я исследовал Stack Overflow и документацию ckeditor и настроил соответственно.
Сначала я устанавливаю ckeditor, используя
pip install django-ckeditor
Затем я настроил мои settings.py как показано ниже
# Static files (CSS, JavaScript, Images)
# https://docs.djangoproject.com/en/2.1/howto/static-files/
STATIC_URL = '/static/'
STATIC_ROOT = os.path.join(BASE_DIR, 'static')
# media
MEDIA_ROOT = os.path.join(BASE_DIR, 'media')
MEDIA_URL = '/media/'
# Static files (CSS, JavaScript, Images)
STATICFILES_FINDERS = [
'django.contrib.staticfiles.finders.FileSystemFinder',
'django.contrib.staticfiles.finders.AppDirectoriesFinder',
]
CKEDITOR_BASEPATH = "/static/ckeditor/ckeditor"
# CKEditor settings
CKEDITOR_UPLOAD_PATH = "uploads/"
CKEDITOR_JQUERY_URL = '//ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js'
# This ensures you have all toolbar icons
CKEDITOR_CONFIGS = {
'default': {
'toolbar': None,
},
}
Затем я настроил свой urls.py (URL-адрес проекта), как показано ниже
url(r'^ckeditor/', include('ckeditor_uploader.urls'))
Затем я запустил команду collect static
Статики ckeditor собираются в нужном месте, определенном в настройках, которое равно /static/ckeditor/ckeditor
После этого я импортировал и использовал поле ckeditor richtextfield в своей модели
from django.db import models
from ckeditor.fields import RichTextField
class Post(models.Model):
post = models.RichTextField()
Во время makemigrations я получаю следующую ошибку
AttributeError: module 'django.db.models' has no attribute 'RichTextField'