urlpatterns = [ # (?P<pk>[0-9]+) => valor en parámetro pk (?P<pk>), que será 1 o más números del 0 al 9 url(r'^admin/', include(admin.site.urls)), # urls nombradas url(r'^blogs/$', BlogsView.as_view(), name='blog_home'), # listado de blogs, con vista basada en clase BlogsView url(r'^$', HomeView.as_view(), name='post_home'), # listado de posts publicados, con vista basada en clase HomeView url(r'^blogs/(?P<username>[a-z]+)/$', UserPostsView.as_view(), name='blog_posts'), # listado posts blog usuario, basada en la clase UserPostView url(r'^blogs/(?P<username>[a-zA-Z]+)/(?P<post_id>[0-9]+)$', DetailView.as_view(), name='post_detail'), # detalle post, basado en clase DetailView url(r'^signup/$', SignupView.as_view(), name='user_signup'), # signup o creación de cuenta de usuario, con vista basada en clase SignupView url(r'^login$', LoginView.as_view(), name='user_login'), # login, con vista basada en clase LoginView url(r'^logout$', LogoutView.as_view(), name='user_logout'), # logout, con vista basada en clase LogoutView url(r'^new-post/$', CreateView.as_view(), name='post_create'), # creación nuevo post, con vista basada en clase CreateView # Users' API URLs url(r'^api/1.0/users/$', UserListAPI.as_view(), name='user_list_api'), # url con listado de users para la API, basado en clases url(r'^api/1.0/users/(?P<pk>[0-9]+)$', UserDetailAPI.as_view(), name='user_detail_api'), #url detalle usuario para la api # Posts' API URLs url(r'^api/1.0/blogs/(?P<username>[a-z]+)/$', PostListAPI.as_view(), name='post_list_api'), # API listado de posts de blog url(r'^api/1.0/posts/(?P<pk>[0-9]+)$', PostDetailAPI.as_view(), name='post_detail_api'), # API detalle de post: CRUD. # Blogs' API URLs url(r'^api/1.0/blogs/$', BlogListAPI.as_view(), name='blog_list_api') # API listado blogs ]
url(r'^new-post$', CreatePostView.as_view(), name='create_post'), url(r'^update-post/(?P<pk>[-\w]+)/(?P<idPost>[0-9]+)/$', UpdatePostView.as_view(), name='update_post'), # Posts API URLs # Listado de posts para la home/Creacion de un post nuevo url(r'api/1.0/posts/$', PostListAPI.as_view(), name='post_list_api'), #Blogs URLs url(r'^blogs/$', BlogsView.as_view(), name='blogs'), url(r'^blogs/(?P<pk>[-\w]+)/$', DetailBlogView.as_view(), name='blog_detail'), # Blogs API URLs # Listado de blogs url(r'api/1.0/blogs/$', BlogsListAPI.as_view(), name='blog_list_api'), # Detalle de un blog: listado de posts del blog url(r'api/1.0/blogs/(?P<pk>[-\w]+)/$', BlogDetailAPI.as_view(), name='blog_detail_api'), # Detalle/Actualizacion/Borrado de un post url(r'api/1.0/blogs/(?P<pk>[-\w]+)/(?P<idPost>[0-9]+)/$', PostDetailAPI.as_view(), name='blog_detail_api'), #Users URLs url(r'^login', LoginView.as_view(), name='users_login'), url(r'^logout', LogoutView.as_view(), name='users_logout'), url(r'^signup', SignupView.as_view(), name='users_signup'), # Users API URLs #Listar usuarios/Crear un nuevo usuario url(r'api/1.0/users/$', UserListAPI.as_view(), name='user_list_api'), # Detalle/Actualizacion/Borrado de un usuario url(r'api/1.0/users/(?P<pk>[0-9]+)$', UserDetailAPI.as_view(), name='user_detail_api') ]
from users.views import login, logout, SignUpFormView urlpatterns = [ path('admin/', admin.site.urls), # Users path('login', login, name='login'), path('logout', logout, name='logout'), path('signup', SignUpFormView.as_view(), name='signup'), # posts path('blogs/<str:name>/<int:pk>/', post_detail, name='post_detail'), path('blogs/<str:name>/', UserPostsView.as_view(), name='blog_user'), path('all_posts', PostsListView.as_view(), name='post_list'), path('post/new/', new_post, name='new_post'), # blogs path('blogs', BlogsListView.as_view(), name='blogs'), # home path('', LatestPostsView.as_view(), name='home'), # API path('api/posts/<int:pk>', PostDetailAPI.as_view(), name='post_detail_api'), path('api/posts/<str:name>', PostsAPI.as_view(), name='posts_api'), path('api/users/<int:pk>', UserDetailAPI.as_view(), name='user_detail_api'), path('api/users', UserAPI.as_view(), name='posts_api') ]
# API END POINT'S # END POINT'S USUARIOS: # End Point para el REGISTRO de Usuarios. path('api/1.0/new-user', UserAddAPI.as_view(), name='api_user_add'), # End point para el DETALLE, la ACTUALIZACION y el BORRADO de un Usuario path('api/1.0/users/<int:pk>', UserDetailAPI.as_view(), name='api_user_detail'), # END POINT'S BLOGS # End Point que devuelve un LISTADO con los Blogs de la plataforma path('api/1.0/blogs', UserListAPI.as_view(), name='api_blogs_list'), # END POINT'S POSTS # End Point que permite la CREACIÓN de un NUEVO POST. path('api/1.0/new-post', PostAddAPI.as_view(), name='api_post_add'), # End Point que permite LISTAR los POST de un BLOG. path('api/1.0/blogs/<str:username>', PostListAPI.as_view(), name='api_post_list'), # End Point para el DETALLE, la ACTUALIZACION y el BORRADO de un POST. path('api/1.0/posts/<int:pk>', PostDetailAPI.as_view(), name='api_post_detail') ]
from posts.api import PostListAPI, PostDetailAPI from posts.views import PostDetail, PostCreationView from django.conf.urls import url urlpatterns = [ # web urls url(r'^posts/(?P<pk>[0-9]+)$', PostDetail.as_view(), name='post_detail'), url(r'^newpost$', PostCreationView.as_view()), # api urls url(r'^api/1.0/posts/$', PostListAPI.as_view(), name='api_post_list'), url(r'^api/1.0/posts/(?P<pk>[0-9]+)$', PostDetailAPI.as_view(), name='api_post_list'), ]