Use Django ORM as standalone [duplicate] Use Django ORM as standalone [duplicate] python python

Use Django ORM as standalone [duplicate]


Ah ok I figured it out and will post the solutions for anyone attempting to do the same thing.

This solution assumes that you want to create new models.

First create a new folder to store your files. We'll call it "standAlone". Within "standAlone", create the following files:

__init__.pymyScript.pysettings.py

Obviously "myScript.py" can be named whatever.

Next, create a directory for your models.

We'll name our model directory "myApp", but realize that this is a normal Django application within a project, as such, name it appropriately to the collection of models you are writing.

Within this directory create 2 files:

__init__.pymodels.py

Your going to need a copy of manage.py from an either an existing Django project or you can just grab a copy from your Django install path:

django\conf\project_template\manage.py

Copy the manage.py to your /standAlone directory. Ok so you should now have the following structure:

\standAlone    __init__.py    myScript.py    manage.py    settings.py\myApp    __init__.py    models.py

Add the following to your myScript.py file:

# settings.pyfrom django.conf import settingssettings.configure(    DATABASE_ENGINE    = "postgresql_psycopg2",    DATABASE_NAME      = "myDatabase",    DATABASE_USER      = "myUsername",    DATABASE_PASSWORD  = "myPassword",    DATABASE_HOST      = "localhost",    DATABASE_PORT      = "5432",    INSTALLED_APPS     = ("myApp"))from django.db import modelsfrom myApp.models import *

and add this to your settings.py file:

    DATABASE_ENGINE    = "postgresql_psycopg2"    DATABASE_NAME      = "myDatabase"    DATABASE_USER      = "myUsername"    DATABASE_PASSWORD  = "myPassword"    DATABASE_HOST      = "localhost"    DATABASE_PORT      = "5432",    INSTALLED_APPS     = ("myApp")

and finally your myApp/models.py:

# myApp/models.pyfrom django.db import modelsclass MyModel(models.Model):     field = models.CharField(max_length=255)

and that's it. Now to have Django manage your database, in command prompt navigate to our /standalone directory and run:

manage.py sql MyApp