python -m venv venv
source venv/scripts/activate
pip install djangorestframework
pip freeze > requirements.txt
django-admin startproject drf_week2 .
gitignore.io
(windows,python,django,macOS,VisualStudioCode)
.gitignore 파일 생성 후 안에 내용추가
git init
해주기
생성 후 주소 복사
git remote add origin $github주소
git add .
git commit -m "내용"
git push origin main
settings.py에서 LANGUAGE_CODE = 'ko-kr' (언어설정)
TIME_ZONE = 'Asia/Seoul' (시간설정)
python manage.py runserver
(서버실행)
python manage.py startapp articles
앱폴더 생성 후 꼭 셋팅에 넣어주기
models.py 작업
class "클래스명"(models.Model):
title = models.CharField(max_length=30)
content = models.TextField()
created_at = models.DateTimeField(auto_now_add=True)
updated_at = models.DateTimeField(auto_now=True)
models.py를 건드렸으면 DB저장 꼭 해주기.
python manage.py makemigrations
python manage.py migrate
admin.py에서 클래스 등록해주기.
from "앱명".models import "클래스명"
admin.site.register(Article)
python manage.py createsuperuser
admin DB에 title로 띄우게 해주기.
def __str__(self):
return str(self.title)
먼저 프로젝트 urls.py에서 앱urls.py를 포함시켜주기.
path('앱명/", include("앱명.urls")),
추가
include도 import부분에 넣어주기
셋팅urls.py을 앱 urls.py로 복사해오고
from $앱명 import views
path("$urls명/",views.$함수명, name="$함수명"),
from rest_framework.decorators import api_view
from rest_framework.response import Response
from $앱명.models import $클래스명
@api_view(['GET', 'POST'])
def $함수명(request):
articles = $클래스명.objects.all()
article = articles[0]
article_data = {
"title":article.title,
"content""article.content,
"created_at":article.created_at,
"updated_at":article.updated_at,
}
return Response(article_data)
IndentationError: unindent does not match any outer indentation level
라는 오류발생
다른점이 뭘까??.. 왓다갓다 빈공간을 지웟다 늘렷다하니 해결됨..
오류를 발견.
velog에서 복사해서 가져오면 앞에 투명커서가 같이 딸려와서 문제가 됨.
serializers.py 파일생성