from django.urls import path from django.contrib.auth import views as auth_views from rest_framework.routers import DefaultRouter from mainsite.views import ( HomeView, ProfileViewSet, HashtagView, ProductViewSet, ) router = DefaultRouter() router.register(r"products", ProductViewSet, basename="products") urlpatterns = [ path("", HomeView.as_view(), name="home"), # path("profile/", ProfileViewSet.as_view(), name="profile"), # path("<hashtag>/", HashtagView.as_view(), name="hashtag"), ] urlpatterns += router.urls
"""mysite URL Configuration The `urlpatterns` list routes URLs to views. For more information please see: https://docs.djangoproject.com/en/1.8/topics/http/urls/ Examples: Function views 1. Add an import: from my_app import views 2. Add a URL to urlpatterns: url(r'^$', views.home, name='home') Class-based views 1. Add an import: from other_app.views import Home 2. Add a URL to urlpatterns: url(r'^$', Home.as_view(), name='home') Including another URLconf 1. Add an import: from blog import urls as blog_urls 2. Add a URL to urlpatterns: url(r'^blog/', include(blog_urls)) """ from django.conf.urls import include, url from django.contrib import admin from mainsite.views import HomeView urlpatterns = [ url(r'^$', HomeView.as_view(), name = 'home'), url(r'^admin/', include(admin.site.urls)), ]
urlpatterns = [ url(r'^admin/', admin.site.urls), #장고 conf파일의 url함수는 내부적으로 re모듈을 호출하는 듯. #url()의 첫번째 변수가 regex 즉 정규식임 #여기서 바로 정규식을 사용함. ^ ~로 시작하는. #인증관련 처리 URL url(r'^accounts/', include('django.contrib.auth.urls')), #django.co~는 장고가 기본적으로 제공하는 인증관련 앱으로, url과 템플릿파일명이 지정되어 있다. 책236페이지 표 참조 #로그인/아웃 관련 url과 view는 장고가 제공하나 해당 템플릿은 직접 만들어야 한다. 물론 템플릿명도 지정됨. url(r'^accounts/register/$', UserCreateView.as_view(), name='register'), #계정 생성처리를 하는 url url(r'^accounts/register/done/$', UserCreateDoneTV.as_view(), name='register_done'), #생성 완료를 보여주는 url url(r'^$', HomeView.as_view(), name='home'), url(r'^bookmark/', include('bookmark.urls', namespace='bookmark')), #include 함수도 import해야함 #최근에 url()대신해 path()가 소개됨. 해당 url이 들어오면 bookmark앱의 urls파일로 가서 처리해라 #차이는 url에서 id를 추출하는 방식이 간편해짐. url은 ?<~~>였는데 path는(<int:number>형식)으로 간단해짐 url(r'^blog/', include('blog.urls', namespace='blog')), #include 함수도 import해야함 url(r'^photo/', include('photo.urls', namespace='photo')), #url(r'^photo/', ListView.as_view(model=Album), name='album_list'),로 한번에 할 수도 있음 ##bookmark를 단독으로 urlconf할때 썻던 코드 # #Class-based view for bookmark 앱 # url(r'^bookmark/$', BookmarkLV.as_view(), name='index'),# xx$ xx로 끝나야함 # #원래는 view.view처리함수 형태가 되어야 하나, 장고의 제네릭(표준)뷰를 쓰기 위해 as_view 사용 # #name은 이 url패턴을 뭐라고 부를 것인가를 정의하는 것 # url(r'^bookmark/(?P<pk>\d+)/$', BookmarkDV.as_view(), name='detail'),