M
M
Maked0nsky2015-04-25 00:05:13
Django
Maked0nsky, 2015-04-25 00:05:13

Why does everyone want django?

Actually, I recently started learning web-development.
After some deepening in python, I started working with web applications using the Flask framework, but already at the initial stages it became difficult to go through and understand certain points even with the help of all the docs and mega-tutorial from Miguel. The question arose about changing the framework to Django (all the same, progress on the flask is not far off), because there are tons of Russian-language educational material on it, which will undoubtedly facilitate learning. However, here's the problem: somehow the descriptions and reviews of people who have already tried both and chose the flask want to choose it because of the ease and lack of rigor, flexibility.
Having studied the demand for workers in the Runet market, I found that no one is looking for flask developers at all. Everyone is looking for Django developers. That's the question of the post: WHY Django? Why does everyone want it? Is this purely a feature of Runet, or are there any prerequisites / reasons for this?
And if there are people here who use / used both frameworks for at least a year, please highlight this issue in more detail from your bell tower. I would also be very grateful if you threw off those sources from where you drew knowledge on flask \ Django, not counting the documentation.

Answer the question

In order to leave comments, you need to log in

18 answer(s)
D
dustyattic, 2015-12-13
@dustyattic

Django is good for everyone, it has everything, but ...
Django is a boxed product, with all the advantages and disadvantages inherent in boxed products. That is, inside a large box called Django, there are many other boxes, the contents of which are perfectly aligned with the product itself and with other boxes. Therefore, the Django developer feels at ease. And if he has a problem, then a large community will always help.
I have only developed one project with Django. Perhaps if the project had been simple, I would still be using Django. But the project turned out to be unexpectedly difficult. Writing code to process data from a number of tables with rather confusing relationships showed me that Django, despite its popularity, has a completely useless ORM. Using Django, I implemented half of the table calls in pure SQL, and then joined the results with the data obtained using the ORM. I did it. But the sediment remained. Therefore, I wrote the next version of the same project, and all subsequent ones too, in Flask, using the notorious SQLAlchemy as an ORM.
I don't regret the time I spent learning Django. It's a good experience. Those who use Django feel protected. They are part of a large friendly community where you can find any support.
But I don't regret leaving Django either. With Django, all the magic (registration, authorization, working with sessions, and much more) is hidden under the hood, I just connected the components and used them. Using Django, I did a lot of things automatically without really wondering how these things work. After moving away from Django, I began to better understand what I do every day.
You can take my word for it, it is possible to write very large projects in Flask, with a lot of code. In this case, the implementation of all magic falls on you. It's just a matter of trust. By using Django you are trusting Django for all the magic, by not using it you are trusting yourself with all the magic.

I
index0h, 2015-04-25
@index0h

This is the most hyped framework, what do you want. It's like RoR for ruby, or Express for NodeJS

U
un1t, 2015-04-25
@un1t

"Lightness and flexibility" in fact turn into the fact that he can do nothing and very few third-party libraries. Well, the ease apparently lies in the fact that there is less documentation on it. In fact, there is no difference in performance, and the lack of libraries becomes an everyday problem. Development performance suffers, you have to write elementary things yourself. You can go further and write your own web server in pure python. It will be even "lighter and more flexible", and Flask's problems will get worse.

B
bromzh, 2015-04-25
@bromzh

  1. There are a bunch of ready-made batteries for janga. For typical projects, in general, it may turn out that there will be a minimum of your own code. and the whole project - the use of the necessary modules.
    Although I myself would choose a flask.

V
Vlad171, 2015-04-26
@Vlad171

For me, the most important argument in favor of Django is a working portal in a few days! It is very easy to learn. This is the same as comparing python with other languages, with all its pluses and minuses. And I do not agree with the fact that there are few third-party libraries - for all my needs, I found everything very quickly. Yes, it's very easy to write your own. Plus ease of debugging.

S
sim3x, 2015-04-25
@sim3x

lightness
why lightness if you can run many containers with an application and accelerate more than any optimization
And the absence of a kernel will lead to the fact that you will have to maintain your own zoo of frequently used
apps not the ones who wrote helloworlds

E
Egor Kazantsev, 2016-07-25
@saintbyte

Dzhanga can do a lot out of the box - she really relaxes, the same rail and that one somehow makes you press more buttons.

P
Puma Thailand, 2015-04-25
@opium

Flask is younger, and Django is the de facto standard, well, Flask has not become Laravel for PHP, but it is quietly developing on the sidelines.

A
Alexander, 2015-04-26
@bIbI4k0

Flask is good and I personally like it better than django. It is concise and thoughtful, and what you can use with Flask - SQLAlchemy, webassets, wtforms and Jinja2 is an order of magnitude better than their counterparts in Django.
But on the other hand, Django can do almost everything out of the box and it's all pretty well "glued" together, has a single and monotonous documentation, a lot of recipes and add-ons / batteries. As a result, there is less problematicness and the ability to solve the tasks set faster, which is often the main factor in choosing a framework for dev companies.
So far, flask is the freelancer's choice and is great for small to medium projects. Well, Django is django. :) I hope the situation will change in the foreseeable future.
PS I know one serious runet-startup that implemented the backend on Flask. It works quite well, although it's still in beta. :)

G
globuser, 2015-04-27
@globuzer

summarizing all of the above, summarizing the analytics of the Internet, we can say: it’s even cooler, that’s why everyone wants it ... the rest are just catching up, but even ahead!

D
Dmitry Shamov, 2015-04-28
@demmsnt

Egg and chicken problems. The site is not written in Django because they do not exist. Everyone says Python==Django. If you offer to write in Flask, then the project manager will say, where can I find specialists for you later, and if you get sick?
As for the coolness of Django.... Well, I'm not sure.

N
Nodar, 2015-04-30
@Nodar

All Tornado guys.

S
Serge K, 2015-04-30
@korotkin

Autoadmin panel, thoughtful architecture and ease of entry for writing simple forms.
Built around request-response with a mid-ranger set and a high level of paranoia.
Those who choose it already know for sure that the project starts quickly and it will be difficult to spoil it, not to mention a bunch of batteries.

N
Nikl, 2017-01-25
@Nikl

Everyone talks about advantages, but what tangible or little tangible disadvantages did Django show itself to be?

S
Stillgray, 2017-04-20
@Stillgray

It's strange that no one tagged bottle.py.
For microprojects, bottle is preferred over flask. Much easier to learn.
Therefore, I think that polarity is not flask - django, but bottle - django.
https://www.slant.co/versus/1398/1741/~flask_vs_bottle

M
marataziat, 2018-03-16
@marataziat

As for me, Django is more suitable for startups, where no one wants to write authorization for a couple of days. Or hackathons so that in 2 days you have a finished product, and not a whistle that displays Hello world!

Why?
Django makes it easier to build better Web apps more quickly and with less code.

I
Inside89, 2019-07-24
@Inside89

When I unloaded a djanga project from production to dev, I encountered such an unpleasant problem with gunicorn, the wsgi script that pulled it for changes and auto-update with autorun simply did not work and its analogues also did not work, this was confirmed by everything and the only advice was to write your own jerking code , since there was no time to write my script, we left it as it is with manual auto-restart, redirecting from http / www was just a headache, where it is done in a second on Apache, here you need to study a bunch of trial and error options for a beginner, this is also a significant minus , again, for beginners like me, it was possible to implement this whole thing on Apache. In general, with the launch of a real server for django on Linux, I suffered. Django also starts dancing with a tambourine when you start changing the admin panel for yourself, if such a task is where you need a super duper admin panel, such as for an online store, then all the benefits of junga go to naught, I will write faster in pure python on mvc . As a result, I began to study asp.net mvc, this framework will fulfill all your wishes, even if there is no such magic as in django, but the flexibility is maximum, it suits perfectly for medium and large projects, and for small ones you can write on cms or in everything like php modx. In general, I liked janga, but not for all projects for sure. and for small ones, you can write on cms or in all types of php modX. In general, I liked janga, but not for all projects for sure. and for small ones, you can write on cms or in all types of php modX. In general, I liked janga, but not for all projects for sure.

Didn't find what you were looking for?

Ask your question

Ask a Question

731 491 924 answers to any question