In [1]:
#%reload_ext autoreload
#%autoreload 2
from algae_app.models import *
from django.db.models import Q, Sum, Count
import pandas as pd
from django.utils import timezone
from django.core.files import File
import cv2
import uuid
import numpy as np
import os

In [2]:
APP_NAME="algae_app"
ROOT_PATH=os.path.abspath(".")

##clear migrations and database
import fnmatch
cd=ROOT_PATH
print "cd %s"%cd
for f in os.listdir(cd):
    if fnmatch.fnmatch(f, '*.sqlite3'):
        print "removing %s"%(os.path.join(ROOT_PATH,f))
        os.remove(os.path.join(cd,f))

cd=os.path.join(ROOT_PATH,APP_NAME,"migrations")
print "cd %s"%cd
for f in os.listdir(cd):
    if fnmatch.fnmatch(f, '*.pyc'):
        print "removing %s"%(os.path.join(cd,f))
        os.remove(os.path.join(cd,f))
    elif fnmatch.fnmatch(f, '0*.py'):
        print "removing %s"%(os.path.join(cd,f))
        os.remove(os.path.join(cd,f))

import sys
import subprocess
manage = os.path.join(ROOT_PATH , "manage.py")
print subprocess.check_output([sys.executable, manage, "makemigrations","--noinput"])
print subprocess.check_output([sys.executable, manage, "migrate","--noinput"])


cd /root/algae2/algae_project
removing /root/algae2/algae_project/db.sqlite3
cd /root/algae2/algae_project/algae_app/migrations
removing /root/algae2/algae_project/algae_app/migrations/0001_initial.py
removing /root/algae2/algae_project/algae_app/migrations/__init__.pyc
removing /root/algae2/algae_project/algae_app/migrations/0001_initial.pyc
Migrations for 'algae_app':
  0001_initial.py:
    - Create model Count
    - Create model LabelImage
    - Create model ObjType
    - Create model RawImage
    - Create model RecallImage
    - Add field raw to labelimage
    - Add field obj_type to count
    - Add field recall to count

Operations to perform:
  Apply all migrations: admin, contenttypes, algae_app, auth, sessions
Running migrations:
  Rendering model states... DONE
  Applying contenttypes.0001_initial... OK
  Applying auth.0001_initial... OK
  Applying admin.0001_initial... OK
  Applying admin.0002_logentry_remove_auto_add... OK
  Applying algae_app.0001_initial... OK
  Applying contenttypes.0002_remove_content_type_name... OK
  Applying auth.0002_alter_permission_name_max_length... OK
  Applying auth.0003_alter_user_email_max_length... OK
  Applying auth.0004_alter_user_username_opts... OK
  Applying auth.0005_alter_user_last_login_null... OK
  Applying auth.0006_require_contenttypes_0002... OK
  Applying auth.0007_alter_validators_add_error_messages... OK
  Applying sessions.0001_initial... OK


In [3]:
from django.contrib.auth.models import User
if User.objects.filter(username='admin').exists():
    print "[admin] is already in User Table"
    admin=User.objects.get(username='admin')
else:
    print "creating [admin] in User Table"
    admin=User.objects.create_user('admin', password='qwer1234')
    admin.is_superuser=True
    admin.is_staff=True
    admin.save()


creating [admin] in User Table

In [ ]: