Konrad
Konrad

Reputation: 640

Using django for CLI tool

Is there any sense in using Django framework for developing Command Line Interface tool? In my case there won't be any graphical interface. What benefits can I get using it? Or maybe you know any other useful frameworks for CLI? I'd like to put an accent on making HTTP requests with REST API.

UPDATE: Thanks guys! I would like rather to use REST API than create it in my tool.

Upvotes: 13

Views: 8998

Answers (1)

e4c5
e4c5

Reputation: 53734

While django is primarily for web apps it has a powerful and easy to use ORM that can be used for CLI apps as well. To use django script as a standalone script without a webserver, all you need to do is to add the following to the top of the file.

import os, sys
if __name__ == '__main__':
    # Setup environ
    sys.path.append(os.getcwd())
    os.environ.setdefault("DJANGO_SETTINGS_MODULE", "main.settings")

    # Setup django
    import django
    django.setup()

    # now you can import your ORM models 

Upvotes: 21

Related Questions