복습 겸 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')이어..
함수 기반 뷰 지금까지 썼던 views.py가 이런 것에 해당한다.def my_view(request): if request.method == 'GET' #서비스 처리 return HttpResponse('result')후에 urls.py에서 path를 추가 그러나 만약에 view 안에 있는 내용이 너무 많다면 이걸 클래스로 구현해도 된다. 클래스 기반 뷰class django.views.generic.base.View를 상속받음View는 모든 클래스형 뷰의 기본이 되는 최상위 뷰참조 문서https://docs.djangoproject.com/en/4.2/ref/class based views/base/#view소스코드 https://github.com/django/django/blo..
오픈소스 - 디디버 ERD를 쓴다. 교안은 살펴볼 시간이 없으므로 나중에 쓴다. 파일을 drag and drop mysql에서 번개 표시를 누르면 실행된다.edit -preferences = consolas 16 Database - reverse engineernext,next, 원하는 db, execute하면 ERD가 그려진다. 서버 안에 데이터베이스, 안에 스키마가 있고, 안에 데이터 문자열은 single 쿼테이션이고, 무조건 끝에 ;를 써줘야 한다.ctrl+enter로 해도 실행된다. oracle에서는 select ~ from dual(테이블이 없을 시)mysql은 된다. 문자열을 그냥 20190301이렇게 써도 날짜로 변환된다. mysql 왼쪽 상단을 누르면 전체가 다 선택된다. 그리고 오른쪽 마..