Django 8

wagtail 첫번째 앱과 모델 만들기.

이 글의 목적은 첫페이지에서 하나의 앱으로 연결하고 그 앱의 하부요소 2개로 이동해 보는 것이다.wagtail 시작하기는 https://blingstarhamal.tistory.com/492 를 참조 django는 하나의 프로젝트에 여러가지 앱들이 달려있는 구조인데 이는 wagtail cms 적용을해도 마찬가지다.내 프로젝트의 이름은 custom 이고, category라는 앱을 하나 만들었다.python manage.py startapp category├── Dockerfile├── category # 새로만든 앱├── custom├── db.sqlite3├── home├── manage.py├── requirements.txt└── search 기본적으로 wagtail 설치를 끝냈으면 프로젝트폴더(cu..

Code/Django 2024.08.21

wagtail models.py > models/<modelname>.py 분리하기

models.py의 내용이 점점 길어짐에 따라 수정할때 엄청난 스크롤 압박을 받게되어 효율적으로 사용하는법을 찾아서 적용하였다.간단히 말하자면 기존 models.py에 있는 각 class 를 파일별로 나누는 것이다.예를 들어 models.py에 APage BPage CPage  라는 class (page)와 DBlock EBlock FBlock 라는 class(block)이 있다면app/ models/ __init__.py a_page.py b_page.py c_page.py blocks.py이렇게 총 5개의 파일을 만들어준다.# __init__.pyfrom .a_page import Afrom .b_page import Bfrom .c..

Code/Django 2024.08.19

django wagtail summernote TypeError: clean() got an unexpected keyword argument 'styles'

TypeError: clean() got an unexpected keyword argument 'styles'edit django_summernote/fields.pypip install tinycss2vi .venv/lib/python3.12/site-packages/django_summernote/fields.py# fields.py# bleach.clean 함수가 styles 인수를 지원하지 않는 것 같습니다. bleach.clean 함수의 인수 목록을 확인하고, styles 인수를 제거하거나 다른 방법으로 스타일을 처리해야 합니다.from django.db import modelsfrom django.forms import fieldsimport bleachfrom bleach.css_sanit..

Code/Django 2024.08.01

django wagtail에서 ajax 구현 방식

inforamtion_location_page.html 페이지 일부에 ajax를 적용하는데클릭 이벤트에 따라 화면 중앙 부분이 비동기로 로드 된다.이때 중앙부분은 location_details.html 이라는 파일로 만들어져 있는데해당부분을 어떻게 inforamtion_location_page.html 에 로드시키는지 알기 위한 정리이다.방식의 과정을 알기위한 내용이기 때문에 코드가 일부만 적혀있다.프론트엔드에서 ajax 요청 방식은 여러가지가 있는데fetchXMLHttpRequest (XHR)jQuery $.ajax()Axios방식에 따라 장단점이 있는데 gpt말로는 fetch가 최신방식이며 javascript에서 실행되는 방법이라고 한다.근데 아무래도 대중적인 jquery방식을 쓰는게 좋지 않을까 싶..

Code/Django 2024.07.31

url view 추가하기 CBV ( ListView)

FBV Functioon based View ( 뷰에서 함수 씀 )CBV Class based View ( 뷰에서 클래스 씀) ListView를 이용한 CBV (코드는 gpt를 이용하여 생성했습니다. 설명은 제가 책을 보고 추가) 기본 모델 작성# models.pyfrom django.db import modelsclass Post(models.Model): title = models.CharField(max_length=100) content = models.TextField() created_at = models.DateTimeField(auto_now_add=True) def __str__(self): return self.title 뷰 정의class 따로 만드는 ..

Code/Django 2024.07.01

url view 추가하기 FBV

FBV Functioon based View ( 뷰에서 함수 씀 )CBV Class based View ( 뷰에서 클래스 씀) blog/로 접속하는 경우 url.py 추가법 (프로젝트폴더의 url.py)blog/ 로접속하면 blog.url을 따른다는 코드# projectmain/url.pyfrom django.contrib import adminfrom django.urls import path, includeurlpatterns = [ path('blog/', include('blog.urls')), ] 이어서 blog앱의 url.py도 수정blog/ 로접속하면 views.py의 index를 따른다.# blog(app)/url.pyfrom django.urls import pathfrom . im..

Code/Django 2024.06.26

Django + Wagtail Start

mkdir projectnamecd projectnamepython -m venv .venv/ # python or python3source .venv/bin/activatepip install wagtail # pip or pip3wagtail start projectname . # .을 찍어야 해당폴더에서 프로젝트파일이 생성됨 없으면 프로젝트이름으로 새폴더가 생김pip install -r requirements.txtpython manage.py makemigrationspython manage.py migratepython manage.py runserverpython manage.py createsuperuser이렇게 시작했을 때, 가상환경이나 db파일은 gitignore에 추가해주는게 좋다.

Code/Django 2024.05.10
320x100