Markdown Editor와 Django Admin 통합
특징
설치
현재
django-mdeditor
는 최대v0.1.20
입니다.pip install django-mdeditor
구성
mdeditor
를 INSTALLED_APPS
에 추가하여 앱에서 사용할 수 있도록 합니다.#settings.py
INSTALLED_APPS = [
...
'mdeditor',
]
settings.py
파일 끝에 아래 구성을 추가합니다. 필요에 따라 수정할 수 있습니다. 참고로 공식docs을 참조하십시오.#settings.py
# add frame settings for django3.0+ like this:
X_FRAME_OPTIONS = 'SAMEORIGIN'
MDEDITOR_CONFIGS = {
'default': {
'width': '100% ', # Custom edit box width
'height': 700, # Custom edit box height
'toolbar': ["undo", "redo", "|",
"bold", "del", "italic", "quote", "ucwords", "uppercase", "lowercase", "|",
"h1", "h2", "h3", "h5", "h6", "|",
"list-ul", "list-ol", "hr", "|",
"link", "reference-link", "image", "code", "preformatted-text", "code-block", "table", "datetime",
"emoji", "html-entities", "pagebreak", "goto-line", "|",
"help", "info",
"||", "preview", "watch", "fullscreen"], # custom edit box toolbar
# image upload format type
'upload_image_formats': ["jpg", "jpeg", "gif", "png", "bmp", "webp", "svg"],
'image_folder': 'editor', # image save the folder name
'theme': 'default', # edit box theme, dark / default
'preview_theme': 'default', # Preview area theme, dark / default
'editor_theme': 'default', # edit area theme, pastel-on-dark / default
'toolbar_autofixed': False, # Whether the toolbar capitals
'search_replace': True, # Whether to open the search for replacement
'emoji': True, # whether to open the expression function
'tex': True, # whether to open the tex chart function
'flow_chart': True, # whether to open the flow chart function
'sequence': True, # Whether to open the sequence diagram function
'watch': True, # Live preview
'lineWrapping': True, # lineWrapping
'lineNumbers': True, # lineNumbers
'language': 'en' # zh / en / es
}
}
# enabling media uploads
MEDIA_ROOT = os.path.join(BASE_DIR, 'uploads')
MEDIA_URL = '/media/'
업데이트
urls.py
를 통해 URL 추가from django.conf.urls import url, include
from django.conf.urls.static import static
from django.conf import settings
...
urlpatterns = [
...
url(r'mdeditor/', include('mdeditor.urls'))
]
if settings.DEBUG:
urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
용법
마크다운 편집기를 활성화하려는 모델 필드에
MDTextField
를 추가합니다.from mdeditor.fields import MDTextField
class Blog(models.Model):
"""Blog model """
...
body = MDTextField(null=True, blank=True)
변경 사항을 반영하도록 마이그레이션
python3 manage.py makemigrations && python3 manage.py migrate
이제 관리자 패널에 로그인하여 실제로 작동하는지 확인하십시오.
짜잔!
읽어주셔서 감사합니다! 이것이 관리자 패널에서 마크다운 편집기를 활성화하려는 모든 사람에게 도움이 되었기를 바랍니다.
행복한 학습!
Reference
이 문제에 관하여(Markdown Editor와 Django Admin 통합), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/umschaudhary/integrating-django-admin-with-markdown-editor-429텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)