분류 전체보기
-
django create room by CBVProject using python/Cloning Airbnb 2021. 3. 8. 17:18
url 설정 config/urls.py urlpatterns = [ path("rooms/", include("rooms.urls", namespace="room")) ] rooms/urls.py from django.urls import path from . import views app_name = "rooms" urlpatterns = [path("create/", views.CreateRoomView.as_view(), name="create-room")] CBV(Class Based View) rooms/forms.py # rooms/forms.py from django import forms from . import models class CreateRoomForm(forms.ModelForm..
-
django create room by FBVProject using python/Cloning Airbnb 2021. 3. 8. 15:21
url 설정 config/urls.py urlpatterns = [ path("rooms/", include("rooms.urls", namespace="room")) ] rooms/urls.py from django.urls import path from . import views app_name = "rooms" urlpatterns = [path("create/", views.creatRoom, name="create-room")] FBV(Function Based View) rooms/views.py # rooms/views.py from django.shortcuts import render, redirect, reverse from django.contrib import messages fro..
-
django Http404()Project using python/Cloning Airbnb 2021. 3. 8. 15:21
CBV(Class Based View) rooms/views.py Http404()는 page not found page를 보여준다. 사용자가 잘못된 경로나 권한이 허락되지 않은 경로를 들어왔을 때 발생시킬 수 있다. django는 404를 return한다. 그리고 반드시 404 template page를 templates folder 가장 상단에 만들어야 한다. template 이름은 404.html이어야 한다. 그렇게 되면 해당 template을 rendering한다. # rooms/views.py from django.http import Http404 def view(request): raise Http404("Page Not Found") templates 404.html {% extends '..
-
django translatorProject using python/Cloning Airbnb 2021. 3. 7. 19:14
django translator란? django app을 여러 언어로 번역할 수 있는 기능을 제공한다. Make locale settings.py 먼저 locale folder를 생성한다. 그리고 settings.py에서 해당 경로를 설정한다. # config/settings.py LOCALE_PATHS = (BASE_DIR / "locale",) {% trans %} static은 무시하고 중요한 것은 i18n이다. i18n은 internatialization으로 i와 n 사이에 있는 18개라는 뜻이다. SW 국제화를 뜻한다. i18n은 load로 불러온다. 여기서 {% trans %}와 {% blocktrans %}를 사용할 수 있다. 번역을 하고 싶은 문자열을 {% trans %}로 감싼다. {% ..
-
django sessionProject using python/Cloning Airbnb 2021. 3. 6. 18:09
session 이란? session은 browser가 아닌 server side에 client 정보를 담는 것을 말한다. Client 측에서 session 값을 저장하는 것을 cookie라고 한다. 하지만 django는 cookie의 user 정보를 담지 않고 session id만 저장하고 이 session id로 server에 있는 user의 정보와 communication을 한다. 그래서 request는 session_key가 담겨져있다. url 설정 config/urls.py urlpatterns = [ path("users", include("users.urls", namespace="users")), ] users/urls.py from django.urls import path from . i..
-
django room detail by CBVProject using python/Cloning Airbnb 2021. 3. 6. 17:14
url 설정 config/urls.py urlpatterns = [ path("rooms/", include("rooms.urls", namespace="room")) ] rooms/urls.py from django.urls import path from . import views app_name = "rooms" urlpatterns = [path("/", views.roomDetail, name="room-detail")] {% url %} room_card.html의 일부다. {% url 'rooms:room-detail' room.pk %}는 /rooms//와 같다. CBV(Class Based View) rooms/views.py CBV는 django에서 정의한 여러가지 View들을 이용한다...
-
django room detail by FBVProject using python/Cloning Airbnb 2021. 3. 6. 16:40
url 설정 config/urls.py urlpatterns = [ path("rooms/", include("rooms.urls", namespace="room")) ] rooms/urls.py from django.urls import path from . import views app_name = "rooms" urlpatterns = [path("/", views.roomDetail, name="room-detail")] {% url %} room_card.html의 일부다. {% url 'rooms:room-detail' room.pk %}는 /rooms//와 같다. FBV(Function Based View) rooms/views.py room.host.date_joined은 dateField..
-
django change password by CBVProject using python/Cloning Airbnb 2021. 3. 5. 15:45
url 설정 config/urls.py urlpatterns = [ path("users", include("users.urls", namespace="users")), ] users/urls.py from django.urls import path from . import views app_name = "users" urlpatterns = [path( "/change-password/", views.ChangePasswordView.as_view(), name="change-password", )] {% url %} update_profile.html의 일부다. Change Password button을 누르면 password를 수정할 수 있는 page로 간다. url template tag를 이용해..