보호되어 있는 글입니다.
기본적으로 serializer의 출력을 했을 때, 포맷은 다음과 같다.from api2.serializers import *CommentSerializer()>> id =IntegerField..content CharField..create_dt = DateTImeField.. 직렬화는, Model instance에서 시리얼라이저, json data에서 byte data 순서로 바뀐다. 그러나 역직력화는 반대로 byte data에서 json data를 거쳐 시리얼라이저에서 해석해 model instace에 들어가게 된다. 따라서 다음과 같은 직렬화를 볼 수 있다.python manage.py shellfrom blog.models import *comm = Comment.objects.first()cs ..
복습 겸 RESTful API를 활용 django rest framework는 어떨 때 쓰는 것인가? mysite2에 있는 urlsurlpatterns = [ path('', HomeView.as_view(), name='home'), path("admin/", admin.site.urls), path("blog/", include('blog.urls')), path("api/", include('api.urls')),api 앱이 있다. 카테고리와 좋아요 버튼, 태그의 blog의 models에 3개가 있다.Post,Category, Tag Post안에 Foriegnkey = Post가 m이고, category가 1인 1:M 관계 tags tag.post_set으로 관계 설정 Te..
장고 auth 앱https://github.com/django/django/tree/main/django/contrib/auth 회원가입 및 로그인 커스텀 페이지를 아예 앱으로 만들어놓은 게 있다. User 모델 사용user 모델을 사용하려면 수정해줘야 한다.from django.contrib.auth.models import UserUser.objects.all()from django.contrib.auth import get_user_modelUser = get_user_model()author = models.ForeignKey('auth.User')from django.conf import settingsauthor = models.ForeignKey(settings.AUTH_USER_MODEL)..
admin 페이지는 기본적으로 장고에서 제공한다. 해당 app마다 admin.py가 있다.from .models import 모델명admin.site.register(모델명)으로 기본적으로 사용할 수 있고, 혹은 커스터마이징해서 사용할 수 있다.from django.cotrib import adminfrom .models import 모델명class 클래스명(admin.ModelAdmin): pass admin.site.register(모델명, 클래스명)혹은@admin.register(모델명)class 클래스명(admin.ModelAdmin): pass ModelAdmin 속성에는 list_display와 id, title, bodt와 같은 리스트의 변수들을 넣을 수 있다.from django.co..
static 파일, 미디어 파일 static 파일은 .css, .js, a.jpg와 같은 게 static 파일이다. media 파일이란from이 있고 input type에 file이 되어 있으면 업로드가 되어 있다.서버쪽에 업로드한 파일을 부를 때 장고에서는 이걸 media 파일이라고 부른다. static file은 쓰려면 환경 세딩을 해야 한다. static 파일의 위치1 앱/static에 있거나2. setting.py 모듈의 STAICFILE_DIRS 속성에 지정한 곳에 있어야 한다.STATICFILES_DIRS = [os.path.join(BASE_DIR, 'mysite', 'static'),] 서비스시 위치에는 STATIC_ROOT = os.path.join(BASE_DIR, 'static')이어..