FastAPI 자습서 - 사용자 안내서
CSS로 글자수 넘어가면 말줄임표 만들기...
position: sticky 동작하지 않을 때
[ HTML ] 공백 넣기(띄어쓰기), 줄 바꿈하는 법
pycharm에서 .jshintrc 파일적용시키는 방법
---. .jshintrc 파일의 위치는 프로젝트 폴더 아래(main.py와 동일한 위치)
---. settings > Languages & Frameworks -> JavaScript -> Code Quality Tools -> JSHint ->Enable JSHint와 Use config files 체크박스를 활성화
Highlighter Module
# html 파일
<!-- Include your favorite highlight.js stylesheet -->
<link> href="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/styles/atom-one-dark.min.css" rel="stylesheet"</link>
<!-- Include the highlight.js library -->
<script> src="https://cdnjs.cloudflare.com/ajax/libs/highlight.js/11.9.0/highlight.min.js"></script>
# js 파일
const quill = new Quill('#editor', {
theme: 'snow',
modules: {
syntax: true, // Include syntax module
toolbar: [['code-block']] // Include button in toolbar
},
});
# My Customizing
const baseToolbar = [
['bold', 'italic', 'underline', 'strike'],
['link', 'image', 'video'],
[{'header': 1}, {'header': 2}, {'header': 3}],
[{'list': 'ordered'}, {'list': 'bullet'}, {'list': 'check'}, {'indent': '-1'}, {'indent': '+1'}],
['blockquote', 'code-block'],
[{'script': 'sub'}, {'script': 'super'}, 'formula'],
[{'color': []}, {'background': []}, {'align': ['', 'center', 'right', 'justify']}],
];
const quillModulesConfig = {
syntax: true, // Highlight syntax module
toolbar: {
container: baseToolbar,
handlers: {
image: imageInsertByToolbarButton,
video: videoInsertByToolbarButton,
}
},
imageResize: {
modules: ['Resize', 'DisplaySize', 'Toolbar'],
displayStyles: {backgroundColor: 'black', border: 'none', color: 'white'},
handleStyles: {backgroundColor: '#fff', border: '1px solid #777', width: '10px', height: '10px'}
},
quillCustomizer: {
objectId: typeof _objectID !== "undefined" ? _objectID : null,
initialContent: typeof _editorContent !== "undefined" ? _editorContent : null
},
};
const quill = new Quill(editorElement, {
theme: 'snow',
placeholder: '여기에 내용을 입력하세요...',
modules: quillModulesConfig
});
(.venv) PS D:\Python_FastAPI\My_Advanced\FastAPIjavaQuill_0.0.1> python Python 3.13.5 (tags/v3.13.5:6cb20a2, Jun 11 2025, 16:15:46) [MSC v.1943 64 bit (AMD64)] on win32 Type "help", "copyright", "credits" or "license" for more information. >>> from app.core.database import AsyncSessionLocal >>> from app.models.articles import Article >>> from datetime import datetime >>> from datetime import timezone >>> import asyncio >>> db = AsyncSessionLocal() >>> for i in range(300): ... q = Article(title='테스트 데이터입니다.', content='내용무', author_id=1, created_at=datetime.now(timezone.utc)) ... db.add(q) >>> asyncio.run(db.commit())
(.venv) PS D:\Python_FastAPI\My_Advanced\FastAPIjavaQuill_0.0.1> python Python 3.13.5 (tags/v3.13.5:6cb20a2, Jun 11 2025, 16:15:46) [MSC v.1943 64 bit (AMD64)] on win32 Type "help", "copyright", "credits" or "license" for more information. >>> import secrets >>> secrets.token_hex(35)