Django 시작하기 - 설치부터 프로젝트 생성까지 🚀
안녕하세요! 👋 오늘은 Python의 대표적인 웹 프레임워크인 Django를 시작하는 방법에 대해 알아보겠습니다. Django를 처음 접하시는 분들도 쉽게 따라할 수 있도록 자세히 설명해드릴게요! 😊 1️⃣ Django란 무엇인가요? 🤔Django(장고)는 Python으로 작성된 무료 오픈소스 웹 애플리케이션 프레임워크입니다. “빠른 개발”과 “깔끔
안녕하세요! 👋 오늘은 Python의 대표적인 웹 프레임워크인 Django를 시작하는 방법에 대해 알아보겠습니다. Django를 처음 접하시는 분들도 쉽게 따라할 수 있도록 자세히 설명해드릴게요! 😊 1️⃣ Django란 무엇인가요? 🤔Django(장고)는 Python으로 작성된 무료 오픈소스 웹 애플리케이션 프레임워크입니다. “빠른 개발”과 “깔끔
목차 Django - App 생성하기 Django - 장고 시작하기 장고 설치하기pip install django 장고 프로젝트 생성하기 - django-admindjango 를 설치하면 django-admin 명령어를 사용할 수 있습니다. 설치된 django-admin 에 startproject 명령어를 사용하면 새롭게 장고 프로젝트를 시작할 수 있
목차 Django - App 생성하기 Django - 장고 시작하기 장고 앱 만들기장고 App 생성은 manage.py 가 있는 프로젝트 폴더에서 startapp 명령어를 사용합니다. startapp 명령어를 사용해 hello_world 라는 이름의 앱을 만들어 줍니다. python manage.py startapp hello_world view.py
장고를 이용한 rest api 만들기settings myapi/settings.py STATIC_ROOT = os.path.join(BASE_DIR, 'staticfiles') 정적 파일 root 추가 INSTALLED_APPS = [ ... 'rest_framework',] INSTALLED_
Comment (댓글) view 구현하기테스트 코드 작성 blog/tests.py # Comment를 생성한다.comment_000 = create_post(post_000, text='a test comment', author=s
블로그 post list와 post detail 페이지에 카테고리 추가하기테스트 코드 작성하기 blog/tests.py post_001 = create_post( title="The second post", content="Second Second Second", author=self.auth
Comment (댓글) 작성창 구현하기forms.py 파일 생성하기 blog/ 해당 돌더에 forms.py 파일을 생성한다. from .models import Commentfrom django import formsclass CommentForm(forms.ModelForm): class Meta: model = Commen
Comment (댓글) 모델 구현하기테스트 코드 작성하기 blog/tests.py # commnet를 생성하는 함수def create_comment(post, text='a comment', author=None): if author is None: author, is_created = User.objects
로그인 사용자만 접속 가능하게 하기테스트 코드 작성 blog/tests.py # post_create를 확인하기 위한 테스트 코드def test_post_create(self): response = self.client.get('/blog/create/') # 로그인 하지 않은 상태에서는 create로 접속시에 20
Post 작성 화면 / 기능 구현하기new 버튼 만들기 blog/templates/post_list.html <!--로그인 한 사용자에게만 보이게 하기-->{% if user.is_authenticated %} <!-- new post button 만들기 --> <butt
Post 수정 화면 / 기능 구현하기update된 url을 반환하는 함수 만들어 주기 blog/models.py # update된 url을 반환하기 위한 함수def get_update_url(self): return self.get_absolute_url() + 'update/' update된 url로 접속하기
마크다운적용하기, tag field에 공란 허용하기 post에 그림이 나타나게 해주기 줄바꿈이 적용될 수 있게 바꿔주기 -> 마크다운 이용하기 post에 그림이 나타나게 해주기 blog/templates/blog/post_detail.html <img class="img-fluid rounded"
Post Detail 개선사항 도출하고 Test 코드 만들기 post에 카테고리 표시하기 edit 버튼 만들기 post에 그림이 나타나게 해주기 줄바꿈이 적용될 수 있게 바꿔주기 -> 마크다운 이용하기 post에 카테고리 표시하기테스트 코드 만들어주기 blog/tests.py self.assertIn(category_politics.na
Category 페이지 만들기 (slugField)Category에 get_absolute_url추가하기 blog/models.py # Create your models here.# 카테고리를 추가한다.class Category(models.Model): # Category의 이름이 유일할 수 있게 unique옵션을 준다. name
사소한 문제들 해결: 불필요한 내용 삭제하기; category 복수형 수정하기 (categorys -> categories)post_detail에 카테고리 반영하기 blog/models.py def get_context_data(self, *, object_list=None, **kwargs): context = super(PostL