
Getting Started with Django REST Framework and AngularJS, Part 2 - joshfinnie
http://engineroom.trackmaven.com/blog/getting-started-drf-angularjs-part-2/
======
wylee
I use DRF with Angular at work, so I'm interested in seeing where this series
goes.

Tangentially, I can't imagine using Django without DRF. It makes setting up
RESTful(ish) APIs so easy. Even if you don't care much about the RESTful
aspects, it provides a much nicer way to organize your code than default
Django IMO. I especially like how serialization works versus Django forms.

~~~
collyw
I found the best thing about DRF was how well it conforms to Django
conventions. Model serializers work very like model forms and the class based
views are almost the same.

------
adpirz
If you're looking for a good DRF / Angular tutorial, I'd highly recommend
[https://thinkster.io/django-angularjs-tutorial](https://thinkster.io/django-
angularjs-tutorial)

------
riebschlager
Aww, what a tease. This is _exactly_ what I'm diving into right now. Since
part one was written in November, I'm guessing part three might show up around
March?

Anyone have any worthwhile Django learning resources to share? (Other than
Django's own docs, which are great.)

~~~
travjones
There's a book called Django by Example by Antonio Mele that I think is pretty
good. People love Two Scoops of Django as well. The former consists of a
series of tutorials and the latter explains best practices to consider when
writing Django apps.

~~~
sdrothrock
Do either of those talk about Django and scalability/duplication? The two
biggest problems I've run into looking for other resources are:

1\. Versions -- a lot of printed materials are just old by the time they come
out.

2\. None of them talk about large-scale projects, only smaller-scale personal
blogs etc. as a first project. Or, put another way, many of the resources I
find target beginners instead of intermediate/advanced learners.

~~~
travjones
Scalability--not so much. If you were really interested in building a highly
scalable service (5M+ concurrent users) you probably would want to look at a
different tool/language. But, chances are, Django works just fine for your
initial/early use cases (before what you're building goes "viral" lol) and for
most web app use cases on the internet. Duplication--yes. If you are talking
about duplicating project boilerplate, Two Scoops gets into this topic
specifically (using a neat package called cookiecutter). If you mean
replication (e.g., horizontal scaling via replication of instances of your
app), then that's more of a dev ops thing and depends on your deployment
setup. I would suggest digging into literature about AWS, or whatever PaaS you
choose.

1\. Versions -- both books target Django 1.8+ (Django 1.9 is the current,
stable release), so I would consider both relevant for now.

2\. I suggested both books because both are current and different. Django By
Example includes examples of projects beyond a simple blog (I think that's
chapter 1 or 2). Each chapter introduces more and more complexity with a
totally separate project example. Whereas, Two Scoops of Django provides
general recommendations for how to best manage common Django tasks/flows. I
think both are appropriate for intermediate/advanced users.

~~~
sdrothrock
Thanks for the in-depth response! I'll check them both out. :)

------
Emouri
Neither Django Rest Framework nor AngularJS is actually used in this post..

~~~
tangue
This reminds me of the kickstarter to build django tutorials. Lots of talks
and finally halting halfway ... That's the difference between Django and Rails
(and now Node). Ressources are scarce and unreliable ...

~~~
amolgupta
I would recommend tangowithdjango.com (Django Only) as the first step.

------
godzillabrennus
This is great! There is always room for more documentation on Django.

------
pbreit
It's shocking to me how something that should be so easy becomes so
complicated. Why does the file structure need to be re-configured? What the
heck are the __init__ files?? Virtual environments?

I sort of know the answers but remain unsatisfied.

And then the author sets up a needlessly overcomplicated data model situation.

~~~
travjones
With all due respect, this tutorial might be a little over your head, but a
little bit of research will get you up to speed. __init__ files and virtual
environments are not specific to Django or DRF. These are typical patterns
used in python development. For example, using a virtual environment allows
you to have a self-contained python environment (your choice of version) with
package management through pip. This is enormously useful when writing apps--
you've got python and dependencies all in one spot contained in its own
environment.

~~~
pbreit
As I mentioned, I know the answers. But that doesn't quell my dissatisfaction.

~~~
alexcabrera
Write your own article ¯\\_(ツ)_/¯

