Stream Our Mistakes cover logo

003 - Convert User Creation to REST API endpoint using Django Framework

0s · Stream Our Mistakes · 27 Nov 22:40

Stream Our Mistakes EP 003

In this episode, we will be working creating a REST API endpoint using Django REST Framework.  This will be a multi part series as I plan to use this backend with a Xamarin Android application. No guarantees it is going to work but I will attempt it anyways. This podcast/blog isn't called stream our mistakes for nothing aye?


I looked over a few youtube videos, this blog post and the excellent Django Rest Documentation.

Since this repo is not public, here is the code snippets that are relevant to the video.
Please note: This project assumes you have already implemented Django Rest Framework in your project.

In the Serializers.py file:
 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
 from rest_framework import serializer
from django.contrib.auth.models import User

class UserCreateSerializer(serializers.ModelSerializer):
class Meta:
model = User
fields = ('first_name',
'last_name',
'email',
'password',)
extra_kwargs = {'password': {'write_only': True} }

# override create function
def create(self, validated_data):
username = validated_data['email']
email = validated_data['email']
first_name = validated_data['first_name']
last_name = validated_data['last_name']
password = validated_data['password']
# I want to set the email as the username so this new object reflects that.
newUser = User(
username = email,
first_name = first_name,
last_name = last_name,
email = email,
password = password)
newUser.set_password(password)
newUser.save()
#return super().create(validated_data)
return validated_data

In my views.py:
1
2
3
4
# view 
class UserCreateAPIView(CreateAPIView):
serializer_class = UserCreateSerializer
returnAllUsers = User.objects.all()

Then we want to include the view in the urls.py:

1
2
3
4
# urls
from app.serializers import UserCreateAPIView

url(r'^api/register/$', app.views.UserCreateAPIView.as_view()),

As mentioned above, this video/post does not cover implementing the rest framework from scratch.

My settings file at this point looks like this:

 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
INSTALLED_APPS = [
# Add your apps here to enable them
'app',
'rest_framework',
# default
'django.contrib.admin',
'django.contrib.auth',
'djang

The episode 003 - Convert User Creation to REST API endpoint using Django Framework from the podcast Stream Our Mistakes has a duration of 0:00. It was first published 27 Nov 22:40. The cover art and the content belong to their respective owners.

More episodes from Stream Our Mistakes

004 - HTML Scraping with Beautiful Soup

Stream Our Mistakes EP 004


In this episode, Matt walks us through html/web scraping using the popular python library, Beautiful Soup.



Here's the code snippet from the session and links:

 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
# Created for Stream Our Mistakes 
# https://streamourmistakes.blogspot.com/

# Reference:
# https://docs.python.org/3/library/urllib.request.html
# https://www.crummy.com/software/BeautifulSoup/bs4/doc/

from bs4 import BeautifulSoup
import urllib.request

'''
# local html to play with from documentation Uncomment to enable
html_doc = """
<html><head><title>The Dormouse's story</title></head>
<body>
<p class="title"><b>The Dormouse's story</b></p>

<p class="story">Once upon a time there were three little sisters; and their names were
<a href="http://example.com/elsie" class="sister" id="link1">Elsie</a>,
<a href="http://example.com/lacie" class="sister" id="link2">Lacie</a> and
<a href="http://example.com/tillie" class="sister" id="link3">Tillie</a>;
and they lived at the bottom of a well.</p>

<p class="story">...</p>
"""
'''

# Get the html from the web.
f = urllib.request.urlopen('https://en.wikiquote.org/wiki/Aristotle')

# Load the html into the parser.
soup = BeautifulSoup(f.read(), 'html.parser')

# Show the whole raw
# print(soup.prettify())

# Access a single element.
# print(soup.title)

# Find all a tags in the html doc and print some information.
links = soup.find_all('a')

for link in links:
print(link.get('href'))

print(len(links))

links:
https://docs.python.org/3/library/urllib.request.html
https://www.crummy.com/software/BeautifulSoup/bs4/doc/

Subscribe to the podcast on apple podcasts, google play,  stitcher

matt
site: http://octon.io/
github: https://github.com/mmdempsey

eddyizm
site: http://eddyizm.com
twitter: http://twitter.com/eddyizm
github: https://github.com/eddyizm

perry
github: https://github.com/apk29

---
**youtube live broadcast:**
https://youtube.com/user/eddyizm/live

Subscribe to our channel and follow my twitter feed to be notified of our next live broadcast and feel free to leave us comments and suggestions on what you want to see.

003 - Convert User Creation to REST API endpoint using Django Framework

Stream Our Mistakes EP 003

In this episode, we will be working creating a REST API endpoint using Django REST Framework.  This will be a multi part series as I plan to use this backend with a Xamarin Android application. No guarantees it is going to work but I will attempt it anyways. This podcast/blog isn't called stream our mistakes for nothing aye?


I looked over a few youtube videos, this blog post and the excellent Django Rest Documentation.

Since this repo is not public, here is the code snippets that are relevant to the video.
Please note: This project assumes you have already implemented Django Rest Framework in your project.

In the Serializers.py file:
 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
 from rest_framework import serializer
from django.contrib.auth.models import User

class UserCreateSerializer(serializers.ModelSerializer):
class Meta:
model = User
fields = ('first_name',
'last_name',
'email',
'password',)
extra_kwargs = {'password': {'write_only': True} }

# override create function
def create(self, validated_data):
username = validated_data['email']
email = validated_data['email']
first_name = validated_data['first_name']
last_name = validated_data['last_name']
password = validated_data['password']
# I want to set the email as the username so this new object reflects that.
newUser = User(
username = email,
first_name = first_name,
last_name = last_name,
email = email,
password = password)
newUser.set_password(password)
newUser.save()
#return super().create(validated_data)
return validated_data

In my views.py:
1
2
3
4
# view 
class UserCreateAPIView(CreateAPIView):
serializer_class = UserCreateSerializer
returnAllUsers = User.objects.all()

Then we want to include the view in the urls.py:

1
2
3
4
# urls
from app.serializers import UserCreateAPIView

url(r'^api/register/$', app.views.UserCreateAPIView.as_view()),

As mentioned above, this video/post does not cover implementing the rest framework from scratch.

My settings file at this point looks like this:

 1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
INSTALLED_APPS = [
# Add your apps here to enable them
'app',
'rest_framework',
# default
'django.contrib.admin',
'django.contrib.auth',
'djang

002 - 2D Flappy Bird game with Unity

Stream Our Mistakes EP 002

In this episode, we will be working on a 2d flappy bird game using the unity framework.


tutorial
https://noobtuts.com/unity/2d-flappy-bird-game

Browse the code, fork the repo to get ready for our next steps.
https://github.com/mmdempsey/FlappyBird

Subscribe to the podcast on apple podcasts, google play,  stitcher
eddyizm
site: http://eddyizm.com
twitter: http://twitter.com/eddyizm
github: https://github.com/eddyizm

matt
site: http://octon.io/
github: https://github.com/mmdempsey

---
**youtube live broadcast:**
https://youtube.com/user/eddyizm/live

Subscribe to our channel and follow my twitter feed to be notified of our next live broadcast and feel free to leave us comments and suggestions on what you want to see.

Sending SMS via code (.Net, c#)

Stream Our Mistakes EP 001
---

In this episode, we will work on sending SMS messages via code using twilio. The example said it could be done in 30 seconds but it took us closer to an hour.

Browse the code, fork the repo to get ready for our next steps.
https://github.com/mmdempsey/SMS-Automation

Subscribe to the podcast on itunes, google play,  stitcher
|


eddyizm
site: http://eddyizm.com
twitter: http://twitter.com/eddyizm
github: https://github.com/eddyizm

matt
site: http://octon.io/
github: https://github.com/mmdempsey

---

**Tool of the week:**
https://technet.microsoft.com/en-us/sysinternals/zoomit.aspx

---
**youtube live broadcast:**
https://youtube.com/user/eddyizm/live

Subscribe to our channel and follow my twitter feed to be notified of our next live broadcast and feel free to leave us comments and suggestions on what you want to see.
---


Linux Terminal

Linux Terminal -

Stream Our Mistakes EP 000

In our first episode we go over terminal command line in linux and specifically, how to install resilio sync on my Ubuntu VM.
We also go over an open machine learning project matt was playing with to generate random quotes all in a linux environment.


links:

resilio sync - https://www.resilio.com/
tmux - https://github.com/tmux/tmux/wiki
char-rnn - https://github.com/karpathy/char-rnn
sample quotes - http://octon.io/sample_quotes.txt
youtube live broadcast: https://www.youtube.com/user/eddyizm/live
Subscribe to our channel and follow my twitter feed to be notified of our next live broadcast and feel free to leave us comments and suggestions on what you want to see. eddyizm
site: http://eddyizm.com
twitter: http://twitter.com/eddyizn
github: https://github.com/eddyizm
matt
site: http://octon.io/
Every Podcast » Stream Our Mistakes » 003 - Convert User Creation to REST API endpoint using Django Framework