Running a Python script outside of Django
django, python
Solution
The easiest way to do this is to set up your script as a `manage.py` subcommand. It's quite easy to do:
from django.core.management.base import NoArgsCommand, make_option
class Command(NoArgsCommand):
help = "Whatever you want to print here"
option_list = NoArgsCommand.option_list + (
make_option('--verbose', action='store_true'),
)
def handle_noargs(self, **options):
... call your script here ...
Put this in a file, in any of your apps under management/commands/yourcommand.py (with empty `__init__.py` files in each) and now you can call your script with `./manage.py yourcommand`.
If you're using Django 1.10 or greater NoArgsCommand has been deprecated. Use BaseCommand instead. https://stackoverflow.com/a/45172236/6022521
Problem
I have a script which uses the Django ORM features, amongst other external libraries, that I want to run outside of Django (that is, executed from the command-line). Edit: At the moment, I can launch it by navigating to a URL... How do I setup the environment for this?