Skip to content

Commit 9a1fcec

Browse files
feat: rest framework
1 parent 598d4a4 commit 9a1fcec

File tree

7 files changed

+55
-4
lines changed

7 files changed

+55
-4
lines changed

api/serializers.py

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
from rest_framework import serializers
2+
from frontend.models import Subscribers
3+
4+
class SubscribersSerializer(serializers.ModelSerializer):
5+
class Meta:
6+
model = Subscribers
7+
fields = ('id', 'name', 'email', 'wpp', 'neighborhood')

api/urls.py

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
from django.urls import path
2+
from . import views
3+
4+
urlpatterns = [
5+
path('subscribers/', views.SubscribersListCreate.as_view() ),
6+
]

api/views.py

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1-
from django.shortcuts import render
1+
from frontend.models import Subscribers
2+
from .serializers import SubscribersSerializer
3+
from rest_framework import generics
24

3-
# Create your views here.
5+
class SubscribersListCreate(generics.ListCreateAPIView):
6+
queryset = Subscribers.objects.all()
7+
serializer_class = SubscribersSerializer

frontend/migrations/0001_initial.py

Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
# Generated by Django 3.0.7 on 2020-06-04 01:51
2+
3+
from django.db import migrations, models
4+
5+
6+
class Migration(migrations.Migration):
7+
8+
initial = True
9+
10+
dependencies = [
11+
]
12+
13+
operations = [
14+
migrations.CreateModel(
15+
name='Subscribers',
16+
fields=[
17+
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
18+
('name', models.CharField(max_length=100)),
19+
('email', models.EmailField(max_length=254)),
20+
('wpp', models.CharField(max_length=300)),
21+
('neighborhood', models.CharField(max_length=300)),
22+
('created_at', models.DateTimeField(auto_now_add=True)),
23+
],
24+
),
25+
]

frontend/models.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
11
from django.db import models
22

3-
# Create your models here.
3+
class Subscribers(models.Model):
4+
name = models.CharField(max_length=100)
5+
email = models.EmailField()
6+
wpp = models.CharField(max_length=300)
7+
neighborhood = models.CharField(max_length=300)
8+
created_at = models.DateTimeField(auto_now_add=True)

rtd/settings.py

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,9 @@
3737
'django.contrib.sessions',
3838
'django.contrib.messages',
3939
'django.contrib.staticfiles',
40+
'rest_framework',
41+
'frontend',
42+
'api'
4043
]
4144

4245
MIDDLEWARE = [

rtd/urls.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,9 @@
1414
2. Add a URL to urlpatterns: path('blog/', include('blog.urls'))
1515
"""
1616
from django.contrib import admin
17-
from django.urls import path
17+
from django.urls import path, include
1818

1919
urlpatterns = [
2020
path('admin/', admin.site.urls),
21+
path('api/', include('api.urls')),
2122
]

0 commit comments

Comments
 (0)