From b407981d418943f737a9eb76d3566dc6f913ad37 Mon Sep 17 00:00:00 2001 From: Kyle K Date: Sun, 26 Mar 2017 23:58:16 -0500 Subject: provide RESTful API at /api/cl pathname --- django_clscrap/settings.py | 3 ++- django_clscrap/urls.py | 1 + myapp/urls.py | 3 ++- myapp/views.py | 12 ++++++++++-- 4 files changed, 15 insertions(+), 4 deletions(-) diff --git a/django_clscrap/settings.py b/django_clscrap/settings.py index 27cb351..39a1021 100644 --- a/django_clscrap/settings.py +++ b/django_clscrap/settings.py @@ -37,7 +37,8 @@ INSTALLED_APPS = [ 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', - # 'myapp.apps.MyappConfig' + 'rest_framework', + 'myapp.apps.MyappConfig', ] MIDDLEWARE = [ diff --git a/django_clscrap/urls.py b/django_clscrap/urls.py index 66dca1d..bc4c361 100644 --- a/django_clscrap/urls.py +++ b/django_clscrap/urls.py @@ -21,4 +21,5 @@ urlpatterns = [ url(r'^$', lambda r: HttpResponseRedirect('app/')), # 302 redirect from / to app/index url(r'^admin/', admin.site.urls), url(r'^app/', include('myapp.urls')), + url(r'^api/', include('myapp.urls')), ] diff --git a/myapp/urls.py b/myapp/urls.py index 0ef0e5a..463b774 100644 --- a/myapp/urls.py +++ b/myapp/urls.py @@ -4,5 +4,6 @@ from . import views urlpatterns = [ url(r'^$', views.app, name='app'), # at this point /app string is consumed - url(r'^page/', views.page, name='page'), # at this point /app string is consumed as well, therefore /app/page hits this + url(r'^page', views.page, name='page'), # at this point /app string is consumed as well, therefore /app/page hits this + url(r'^cl', views.cl_scrap), ] \ No newline at end of file diff --git a/myapp/views.py b/myapp/views.py index 10b5c99..6b014ac 100644 --- a/myapp/views.py +++ b/myapp/views.py @@ -1,7 +1,8 @@ from django.shortcuts import render # Create your views here. -from django.http import HttpResponse +from django.http import HttpResponse, JsonResponse +import cl def app(request): @@ -9,4 +10,11 @@ def app(request): def page(request): - return HttpResponse("hello, page!") \ No newline at end of file + return HttpResponse("hello, page!") + + +def cl_scrap(request): + if request.method == 'GET': + arr = cl.query_craigslist() + ret = {'data': arr, 'items': len(arr)} + return JsonResponse(ret) \ No newline at end of file -- cgit v1.2.3