- 프로젝트 이름은 synapeditor_django입니다.
- 앱 이름은 edit입니다.
0. 사전작업
앱 등록
Code Block | ||
---|---|---|
| ||
# 프로젝트 settings.py
...
INSTALLED_APPS = [
'edit.apps.EditConfig', #앱 등록
...
]
...
# 프로젝트 urls.py
...
urlpatterns = [
path('edit/', include('edit.urls')), # 앱에서 사용할 url 등록
...
]
... |
1. 이미지 업로드(동영상, 파일 업로드도 동일)
- 예제에서
- 프로젝트 이름은 synapeditor_django입니다.
- 앱 이름은 edit입니다.
- 이미지 업로드는media 디렉토리에 합니다.
- 이미지 업로드 API는 '/edit/uploadFile'입니다.
...
Code Block | ||
---|---|---|
| ||
// 사이냅에디터 설정 객체
var SynapEditorConfig = {
...
'editor.upload.image.param': {
'csrfmiddlewaretoken': '{{ csrf_token }}'
},
'editor.upload.image.api': '/edit/uploadFile',
...
} |
...
Code Block | ||
---|---|---|
| ||
# 프로젝트 settings.py ... INSTALLED_APPS = [ 'edit.apps.EditConfig' ... ] MEDIA_URL = '/media/' MEDIA_ROOT = os.path.join(BASE_DIR, 'media') ... # 프로젝트 urls.py urlpatterns = [ ... path('edit/', include('edit.urls')), ] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) |
...
Code Block | ||
---|---|---|
| ||
# 앱 models.py import uuid from django.db import models # 저장할 파일 이름을 반환합니다. def get_file_name(instance, filename): ext = filename.split('.')[-1] return "%s.%s" % (uuid.uuid4(), ext) class UploadFile(models.Model): file = models.FileField(upload_to=get_file_name) |
2. 문서 임포트
- 예제에서
- 문서 업로드 및 변환된 결과물은 media 디렉토리에 저장 합니다.
- 문서 임포트 API는 '/edit/importDoc'입니다.
0) 에디터 설정
Code Block | ||
---|---|---|
| ||
// 사이냅에디터 설정 객체
var SynapEditorConfig = {
...
'editor.import.param': {
'csrfmiddlewaretoken': '{{ csrf_token }}'
},
'editor.import.api': '/edit/importDoc/',
...
} |