이 저장소는 htmx를 사용하는 Django 프로젝트를 작성할 때 사용하고 개발 중인 패턴과 완전한 예제 코드를 대략적으로 편집한 것입니다.
문서는 GitHub(https://github.com/spookylukey/django-htmx-patterns/)에서 볼 수 있도록 작성되었으며 필요한 경우 코드를 로컬에서 실행할 수 있습니다.
내 목표는 다음을 문서화하고 공유하는 것입니다.
제시된 코드는 달리 명시되지 않는 한 Django 및 htmx에만 의존합니다. 나는 그것을 도서관으로 포장하지 않을 것입니다. 대신 공개 도메인으로 공개되므로 필요에 따라 복사하여 붙여넣는 것이 좋습니다. (이유는 “접근 방식” 문서를 참조하세요).
django-htmx와 같이 여기에 언급된 일부 항목에 대한 바로 가기를 제공하는 일부 Django 패키지가 있지만 명확성을 위해 이러한 패키지는 사용하지 않겠습니다.
이 작업은 진행 중이므로 최신 상태로 유지하도록 노력하겠습니다. PR을 환영합니다.
이 저장소의 가장 큰 기여는 다음과 같습니다.
템플릿에서 블록 선택이 포함된 인라인 부분.
이는 훌륭한 "행동의 지역성"을 위해 페이지의 일부를 함께 유지할 수 있게 하고 어떤 템플릿 조각/부분이 사용되는지에 대해 뷰 코드가 알 필요가 없도록 하는 패턴입니다. htmx에 대한 템플릿 코드 변경은 일반적으로 Django 템플릿 block
에서 템플릿의 일부 부분을 래핑하고 표준 htmx 속성을 추가하는 문제입니다. htmx에 대한 보기 코드 변경은 종종 보기 함수에 @for_htmx(use_block_from_params=True)
단일 데코레이터를 추가하는 것입니다.
이 패턴은 Django의 htmx 유용성에 큰 차이를 만듭니다.
Django의 양식 추상화와 모든 이점을 유지하면서 필드별 htmx 양식 유효성 검사의 전체 예입니다.
모달을 수행하기 위한 좋은 패턴
장고
htmx(추천 설치 문서는 기본 템플릿 참조)
여기서 가장 좋은 패턴에는 django-render-block이 필요합니다.
pip 설치 django-render-block
내 예제 코드에는 포옹하거나 발로 차서 상태를 변경할 수 있는 슬프고 행복한 괴물이 포함되어 있습니다. 나는 몬스터를 차는 것을 지지하지 않으며, 안아주라고 권하지도 않습니다.
코드 폴더에는 문서의 모든 내용에 대한 전체 작업 예제가 포함된 데모 앱이 있습니다.
로컬로 설치하려면 virtualenv를 생성하고 활성화한 후 다음을 수행하십시오.
CD 코드 pip 설치 -r 요구사항.txt 파이썬 관리.py 마이그레이션 파이썬 관리.py 실행 서버
귀하의 의견은 매우 환영합니다! 마음에 들면 이 저장소에 별표를 표시하고 토론에서 아이디어를 공유해 주세요.
다른 좋은 htmx 리소스:
이 저장소가 마음에 드셨다면 제가 제공하는 다른 리소스를 통해 도움을 받으실 수도 있습니다.