Model cleanups for example app and it's management commands
This commit is contained in:
@@ -3,11 +3,7 @@
|
||||
This module is a scratchpad for general development, testing & debugging
|
||||
Well, even more so than pcmd.py. You best ignore p2cmd.py.
|
||||
"""
|
||||
import uuid
|
||||
import django
|
||||
|
||||
from django.core.management.base import NoArgsCommand
|
||||
from django.db import connection
|
||||
from pprint import pprint
|
||||
import time
|
||||
import sys
|
||||
@@ -16,7 +12,7 @@ from pexp.models import *
|
||||
|
||||
|
||||
def reset_queries():
|
||||
if django.VERSION < (1, 9):
|
||||
if django.VERSION < (1, 8):
|
||||
connection.queries = []
|
||||
else:
|
||||
connection.queries_log.clear()
|
||||
@@ -58,20 +54,20 @@ class Command(NoArgsCommand):
|
||||
|
||||
def handle_noargs(self, **options):
|
||||
if False:
|
||||
ModelA.objects.all().delete()
|
||||
a = ModelA.objects.create(field1='A1')
|
||||
b = ModelB.objects.create(field1='B1', field2='B2')
|
||||
c = ModelC.objects.create(field1='C1', field2='C2', field3='C3')
|
||||
TestModelA.objects.all().delete()
|
||||
a = TestModelA.objects.create(field1='A1')
|
||||
b = TestModelB.objects.create(field1='B1', field2='B2')
|
||||
c = TestModelC.objects.create(field1='C1', field2='C2', field3='C3')
|
||||
reset_queries()
|
||||
print ModelC.base_objects.all()
|
||||
print TestModelC.base_objects.all()
|
||||
show_queries()
|
||||
|
||||
if False:
|
||||
ModelA.objects.all().delete()
|
||||
TestModelA.objects.all().delete()
|
||||
for i in xrange(1000):
|
||||
a = ModelA.objects.create(field1=str(i % 100))
|
||||
b = ModelB.objects.create(field1=str(i % 100), field2=str(i % 200))
|
||||
c = ModelC.objects.create(field1=str(i % 100), field2=str(i % 200), field3=str(i % 300))
|
||||
a = TestModelA.objects.create(field1=str(i % 100))
|
||||
b = TestModelB.objects.create(field1=str(i % 100), field2=str(i % 200))
|
||||
c = TestModelC.objects.create(field1=str(i % 100), field2=str(i % 200), field3=str(i % 300))
|
||||
if i % 100 == 0:
|
||||
print i
|
||||
|
||||
@@ -83,11 +79,11 @@ class Command(NoArgsCommand):
|
||||
|
||||
return
|
||||
|
||||
nModelA.objects.all().delete()
|
||||
a = nModelA.objects.create(field1='A1')
|
||||
b = nModelB.objects.create(field1='B1', field2='B2')
|
||||
c = nModelC.objects.create(field1='C1', field2='C2', field3='C3')
|
||||
qs = ModelA.objects.raw("SELECT * from pexp_modela")
|
||||
NormalModelA.objects.all().delete()
|
||||
a = NormalModelA.objects.create(field1='A1')
|
||||
b = NormalModelB.objects.create(field1='B1', field2='B2')
|
||||
c = NormalModelC.objects.create(field1='C1', field2='C2', field3='C3')
|
||||
qs = TestModelA.objects.raw("SELECT * from pexp_testmodela")
|
||||
for o in list(qs):
|
||||
print o
|
||||
|
||||
@@ -99,14 +95,14 @@ rnd = Random()
|
||||
def poly_sql_query():
|
||||
cursor = connection.cursor()
|
||||
cursor.execute("""
|
||||
SELECT id, pexp_modela.field1, pexp_modelb.field2, pexp_modelc.field3
|
||||
FROM pexp_modela
|
||||
LEFT OUTER JOIN pexp_modelb
|
||||
ON pexp_modela.id = pexp_modelb.modela_ptr_id
|
||||
LEFT OUTER JOIN pexp_modelc
|
||||
ON pexp_modelb.modela_ptr_id = pexp_modelc.modelb_ptr_id
|
||||
WHERE pexp_modela.field1=%i
|
||||
ORDER BY pexp_modela.id
|
||||
SELECT id, pexp_testmodela.field1, pexp_testmodelb.field2, pexp_testmodelc.field3
|
||||
FROM pexp_testmodela
|
||||
LEFT OUTER JOIN pexp_testmodelb
|
||||
ON pexp_testmodela.id = pexp_testmodelb.testmodela_ptr_id
|
||||
LEFT OUTER JOIN pexp_testmodelc
|
||||
ON pexp_testmodelb.testmodela_ptr_id = pexp_testmodelc.testmodelb_ptr_id
|
||||
WHERE pexp_testmodela.field1=%i
|
||||
ORDER BY pexp_testmodela.id
|
||||
""" % rnd.randint(0, 100) )
|
||||
# row=cursor.fetchone()
|
||||
return
|
||||
@@ -115,10 +111,10 @@ def poly_sql_query():
|
||||
def poly_sql_query2():
|
||||
cursor = connection.cursor()
|
||||
cursor.execute("""
|
||||
SELECT id, pexp_modela.field1
|
||||
FROM pexp_modela
|
||||
WHERE pexp_modela.field1=%i
|
||||
ORDER BY pexp_modela.id
|
||||
SELECT id, pexp_testmodela.field1
|
||||
FROM pexp_testmodela
|
||||
WHERE pexp_testmodela.field1=%i
|
||||
ORDER BY pexp_testmodela.id
|
||||
""" % rnd.randint(0, 100) )
|
||||
# row=cursor.fetchone()
|
||||
return
|
||||
|
||||
@@ -5,7 +5,6 @@ This module is a scratchpad for general development, testing & debugging.
|
||||
|
||||
from django.core.management.base import NoArgsCommand
|
||||
from django.db import connection
|
||||
from pprint import pprint
|
||||
|
||||
from pexp.models import *
|
||||
|
||||
@@ -14,14 +13,6 @@ def reset_queries():
|
||||
connection.queries = []
|
||||
|
||||
|
||||
def show_queries():
|
||||
print
|
||||
print 'QUERIES:', len(connection.queries)
|
||||
pprint(connection.queries)
|
||||
print
|
||||
connection.queries = []
|
||||
|
||||
|
||||
class Command(NoArgsCommand):
|
||||
help = ""
|
||||
|
||||
@@ -33,9 +24,9 @@ class Command(NoArgsCommand):
|
||||
print Project.objects.all()
|
||||
print
|
||||
|
||||
ModelA.objects.all().delete()
|
||||
a = ModelA.objects.create(field1='A1')
|
||||
b = ModelB.objects.create(field1='B1', field2='B2')
|
||||
c = ModelC.objects.create(field1='C1', field2='C2', field3='C3')
|
||||
print ModelA.objects.all()
|
||||
TestModelA.objects.all().delete()
|
||||
a = TestModelA.objects.create(field1='A1')
|
||||
b = TestModelB.objects.create(field1='B1', field2='B2')
|
||||
c = TestModelC.objects.create(field1='C1', field2='C2', field3='C3')
|
||||
print TestModelA.objects.all()
|
||||
print
|
||||
|
||||
@@ -3,7 +3,6 @@
|
||||
This module is a scratchpad for general development, testing & debugging
|
||||
"""
|
||||
|
||||
import django
|
||||
from django.core.management.base import NoArgsCommand
|
||||
from django.db import connection
|
||||
from pprint import pprint
|
||||
@@ -14,7 +13,7 @@ num_objects = 1000
|
||||
|
||||
|
||||
def reset_queries():
|
||||
if django.VERSION < (1, 9):
|
||||
if django.VERSION < (1, 8):
|
||||
connection.queries = []
|
||||
else:
|
||||
connection.queries_log.clear()
|
||||
@@ -57,9 +56,9 @@ def print_timing(func, message='', iterations=1):
|
||||
|
||||
def run_vanilla_any_poly(func, iterations=1):
|
||||
f = print_timing(func, ' ', iterations)
|
||||
f(nModelC)
|
||||
f(NormalModelC)
|
||||
f = print_timing(func, 'poly ', iterations)
|
||||
f(ModelC)
|
||||
f(TestModelC)
|
||||
|
||||
|
||||
###################################################################################
|
||||
|
||||
@@ -4,24 +4,10 @@ This module is a scratchpad for general development, testing & debugging
|
||||
"""
|
||||
|
||||
from django.core.management.base import NoArgsCommand
|
||||
from django.db import connection
|
||||
from pprint import pprint
|
||||
|
||||
from pexp.models import *
|
||||
|
||||
|
||||
def reset_queries():
|
||||
connection.queries = []
|
||||
|
||||
|
||||
def show_queries():
|
||||
print
|
||||
print 'QUERIES:', len(connection.queries)
|
||||
pprint(connection.queries)
|
||||
print
|
||||
connection.queries = []
|
||||
|
||||
|
||||
class Command(NoArgsCommand):
|
||||
help = ""
|
||||
|
||||
|
||||
Reference in New Issue
Block a user