장고6 [Django] 정적(static) 파일 1. 정적(static) 파일 이란 웹 페이지를 랜더링 하는 과정에서 필요한 추가적인 파일들을 의미한다. 추가적인 파일에는 css,js,font,image파일 등이 있을 수 있다. 2. 정적 파일 구조 template구조와 같이 샌드위치 구조로 작성하면 좋다. app_name/ __init__.py admin.py apps.py migrations/ __init__.py models.py tests.py views.py static/ app_name/ css/ styles.css images/ test.jpg app_name / static / app_name가 같은 구조를 샌드위치 구조라 한다. static안에 있는 app_name에 css폴더 , images폴더 등 필요한 파일들을 추가 하면 된다. .. 2021. 5. 7. [Django] 템플릿 상속 템플릿 상속이란 작성 할 html 문서 중에서 기본이 되는 템플릿을 정하고, 공통으로 사용 되는 코드를 작성하여 다른 html 문서에서 기본 템플릿의 코드가 필요하면 상속하여 가져다 쓰는 것을 말한다. 기본 템플릿 작성 templates폴더에서 base.html파일이라는 기본이 되는 템플릿을 생성하고 공통으로 사용 되는 코드를 작성한다. {% block content %} {% endblock %} 을 base.html 상속 한 파일에서 구현해야 할 영역이다. 공통 요소들 {% block content %} #상속한 템플릿에서 작성하는 부분 {% endblock %} 상속 받을 템플릿 작성 index.html 파일을 생성 후 base.html을 상속 받아 보자. 상속을 받을 때는 항상 맨 위에 {% ex.. 2021. 5. 3. [Django] Django 템플릿 언어 Django에서 HTML을 작성 할 때 프로그래밍을 하는 것 처럼 도와주는 것이다. 템플릿 언어에는 크게 4가지가 존재한다. 템플릿 변수 템플릿 필터 템플릿 태그 템플릿 주석 1. 템플릿 변수 HTML 안에서 {{ 변수명 }} 과 같은 형태로 사용한다. 변수명은 템플릿이 랜더 될 때 지정한 데이터로 변환 된다. 즉 view에서 넘겨 받은 값으로 변환하게 된다. {{ 변수명.속성 }} 와 같이 변수가 가진 속성을 가져 올 수도 있다. #views.py 예시 date_list = { name = "ko", age = "30", } #html 예시 {{ data_list.name }} 2. 템플릿 필터 {{ 변수명 | 필터 }} 와 같이 사용 하며 템플릿 변수를 특정 형식으로 변환 할 때 사용하게 된다. la.. 2021. 4. 30. [Django] django 앱(App) 구조 1. 앱 이란 Django는 각각의 기능을 앱 단위로 구현을 한다. 서로 다른 기능을 하는 앱을 여러 개 구현 하여 하나의 프로젝트로 만드는 것이다. 또한 앱은 여러 개의 프로젝트에서 재사용이 가능한 특징이 있다. 2. 앱 생성 Django에서 앱을 생성 할때는 manage.py를 사용 하여 생성 할 수 있다. python manage.py startapp 앱이름 or django-admin startapp 앱이름 #사용 예시 python manage.py startapp tistory or django-admin startapp tistory 3 Django 앱 구조 앱 폴더/ __init__.py admin.py apps.py migrations/ __init__.py models.py tests.p.. 2021. 4. 29. [Django] 장고 템플릿 장고 템플릿 장고에서는 템플릿 태그 기능을 제공 한다. HTML에서는 View에서 넘어온 변수를 바로 사용을 하지 못하기 때문에 템플릿 태그를 사용 하여 Python코드를 HTML 바꿔서 사용해야 한다. python을 HTML로 바꿔주는게 템플릿 태그의 기능이다. View에서 users라는 변수를 보내서 HTML에서 사용한다고 가정 하면 user/views.py def user_list(request): #-id 최신 id값 users = Users.objects.all().order_by('-id') return render(request, 'user_list.html',{'users' : users}) // users 변수를 넘긴다 HTML에서 사용 할 때 아래와 같이 사용해야 한다. user/tem.. 2021. 3. 9. [Django] forms.py에서 def clean() 함수 views에서 .is_valid()를 통해서 검사를 통과한 값은 cleaned_data 라는 변수 명으로 {} : dict 타입으로 제공이 된다. def login(request): if request.method == "POST": form = LoginForm(request.POST) if form.is_valid(): print(form.cleaned_data) # {'username': 'user1', 'password': 'user1'} #session return redirect('/') else: form = LoginForm() cleaned_data 변수는 forms에서 오버라이딩한 def clean() 메서드에서 생성 된 값이다. clean 메서드는 값이 비어있는지 검사하는 기능을 수행.. 2021. 3. 8. 이전 1 다음