일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- python3
- 아스키코드
- JavaScript
- DOM
- Django
- pipenv
- 건대입구맛집
- 추상클래스
- 정렬알고리즘
- 자바
- 부스트코스
- removetooltip
- 노마드코더
- 성수동카페
- BeautifulSoup
- 가상환경
- 포인터
- 장고
- 상속
- c언어문자열
- FLUTTER
- richtext
- 속초여행
- popupmenubutton
- 알고리즘
- 남양주맛집
- 코딩독학
- Python
- 컴퓨터과학
- 강원도속초맛집
- Today
- Total
목록전체 글 (108)
YUYANE

학습 강의 https://www.youtube.com/watch?v=Ij1MCRk-d6c&list=PL9tgJISrBWc5619CclyqYrnnMkVOPzVYM settings.py - context processor - context_processors : 에 추가한 뷰는 모든 템플릿에서 참조 가능하다. TEMPLATES = [ { 'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': [os.path.join(BASE_DIR, 'insta_clone/templates')], 'APP_DIRS': True, 'OPTIONS': { 'context_processors': [ 'django.template.context_processor..

학습 강의 https://www.youtube.com/watch?v=Ij1MCRk-d6c&list=PL9tgJISrBWc5619CclyqYrnnMkVOPzVYM 코드 @login_required def follow(request, username, option): #option : follow / unfollow following = get_object_or_404(User, username=username) try: f, created = Follow.objects.get_or_create(follower=request.user, following=following) #unfollow if int(option) == 0: f.delete() Stream.objects.filter(following=fo..

crispy form? 부트스트랩 폼과 장고를 통합하는 패키지로 장고 프로젝트에서 부트스트랩 폼을 만드는 데 도움을 준다. crispy form 적용 전 {% extends "blog/base.html" %} {% block content %} {% csrf_token %} Login {{ form }} Login Do you need an account? Sign up {% endblock content %} crispy form 적용 후 {% extends "blog/base.html" %} {% load crispy_forms_tags %} {% block content %} {% csrf_token %} Login {{ form | crispy }} Login Do you need an accou..

문제 상황 앱 폴더의 model.py 을 수정 했는데, makemigrations을 해도 'No chages detected'만 떴다. 해결 방법 Project 폴더 settings.py -> INSTALLED_APPS 에서 해당 앱을 추가하자. INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'blog.apps.BlogConfig', ]

view.py 종류 : function-based, class_based url은 요청에 바로 응답하는 방법이고, view는 요청에 반응하는 방법 urls.py에서 호출되는 url에 매핑된 클래스/메서드를 모아놓은 파일 페이지가 요청 → 장고는 HttpRequest 객체를 생성 → (url을 통해서) 적절한 view를 로딩해서 HttpRequest를 첫 번째 인자로 전달 → view는 HTTP Response를 반환 HttpRequest 객체는 request에 대한 메타데이터를 담고 있다. FBV에서는 request, CBV에서는 self.request로 접근 render()를 통해 템플릿을 만들어줌으로써 HTTP Response를 반환한다. middleware 는 app을 감싸고 있으면서 request..

학습 강의 nomadcoders.co/airbnb-clone/lobby 장고 프로젝트에서 명령을 실행할 때 아래와 같은 구문을 쓴다. 오늘은 정해진 명령어를 사용하는 대신 명령어를 커스터마이징 하는 방법에 대해 알아보자. python manage.py 명령어 디렉토리 구조 장고 프로젝트에서 어떤 앱이든 커스터마이징 한 command를 manage.py 에 등록할 수 있다. 우선, 아래와 같이 원하는 앱 폴더(polls)에 management/commands 디렉토리를 추가하자. polls/ __init__.py models.py management/ commands/ _private.py closepoll.py tests.py views.py 그러면 Django는 이름이 밑줄로 시작하지 않는 디렉토리의 ..

model 메소드 오버라이딩 - 장고 model에는 데이터베이스 관련 작업을 담고 있는 메소드(아래 링크 참고)가 많은데, 원하는대로 커스터마이징이 가능하다. docs.djangoproject.com/en/3.1/ref/models/instances/#model-instance-methods - 부모 클래스를 호출하는 super()*를 사용한다. *super() 예시 - 부모 클래스 : Animal - 자식 클래스 : Cat class Animal(): def __init__(self, name): self.name = name def say(self): print("나는 동물이에요.") class Cat(Animal): def say(self): super().say() print("나는 고양이에요."..

학습 강의 nomadcoders.co/airbnb-clone/lobby MEDIA_ROOT - 장고에게 파일 업로드 하라고 알려주는 절대 경로; 파일이 저장 될 위치 - STATIC_ROOT와 달라야 한다. - config - settings.py 에서 설정 - 예시 코드 업로드 되는 파일은 'uploads' 폴더에 저장될 것이다. MEDIA_ROOT = os.path.join(BASE_DIR, 'uploads') MEDIA_URL - MEDIA_ROOT로 서브 된 미디어 파일을 처리하는 URL; - '/'로 끝나야 한다. - 시작할 때 '/'를 써야 절대 경로를 만들어준다. 그렇지 않으면 상대 경로가 생성되는데, 루트에서 시작하지 않고, 현재 위치 URL 끝에서 파일명이 붙는다. - 예시 MEDIA_U..