Take the 2-minute tour ×
Programmers Stack Exchange is a question and answer site for professional programmers interested in conceptual questions about software development. It's 100% free, no registration required.

Is Django a good solution for creating applications that won't use any database and communicate only through an internal API?

share|improve this question

closed as primarily opinion-based by MichaelT, Dan Pichelman, Kilian Foth, ratchet freak, gnat Nov 17 at 10:36

Many good questions generate some degree of opinion based on expert experience, but answers to this question will tend to be almost entirely based on opinions, rather than facts, references, or specific expertise.If this question can be reworded to fit the rules in the help center, please edit the question.

    
Yes. Since that's probably not helpful, you might want to provide more details and what your alternative choices are. –  S.Lott Dec 13 '11 at 18:12
    
Why not just use any other language, say JavaScript? –  Emmad Kareem Dec 14 '11 at 17:51
3  
There are other great Python frameworks. Take a look on Flask for example. –  Anton Barkovsky Dec 14 '11 at 20:14
    
This question might be better at Web Applications –  Dipan Mehta Feb 14 '12 at 16:30

4 Answers 4

up vote 8 down vote accepted

Depends what you call 'good'.

However, while you can use django with no database, the object-relational mapper is pretty much its first and foremost advertised feature. Django was designed to produce database-backed web sites, so if you're not going to use a database you might end up dealing with a bunch of unnecessary hassle.

share|improve this answer

Although there is nothing stopping you from not using a DB in Django, my advice would be: "If you don't need a full stack framework, don't use a full stack framework". Python has many excellent microframeworks that might suit your needs better.

This blog post discusses some of them: http://www.konstruktor.ee/blog/python-web-framework-roundup

My personal favorite is Flask: http://flask.pocoo.org/, but I have not done much real work with it.

share|improve this answer
1  
Using a micro-framework is an excellent suggestion and one I would highly recommend for such a use case. –  Cromulent May 24 '12 at 15:10

From the Django book:

Django is well suited for making database-driven Web sites, as it comes with easy yet powerful ways of performing database queries using Python.

You can use the framework to make a site with some logic in it, but you will be wasting some of its potential. Besides, interacting with the database from Django layer is too easy to ignore it.

share|improve this answer

Django comes with inbuilt sqllite database. Which doesn't require much configurations. And when it comes to the use django without database then it simply violates the MTV pattern of Django.

share|improve this answer
1  
sqlite isn't a database you can use in production, it doesn't exactly scale for large websites. And the model doesn't have to come from a database. –  Martijn Pieters Aug 26 at 21:54
    
Yes for production purposes sqlite can't be used. It can only be used for development purposes. For large websites postgresql, mysql, oracle are the options. –  tinker21 Aug 27 at 3:23

Not the answer you're looking for? Browse other questions tagged or ask your own question.