Have a SQL problem, adding this model all works correctly, the problem
is in ADMIN.
When I add the data just few to each table, by clicking on TYPE & PAGE
in ADMIN the page is loading so slow, installed debug_toolbar and SQL
took 17 seconds for the TYPE. When I tried the PAGE it gave me timeout,
my question is what is wrong with my model? Is it constructed bad?
My goal is this lets say example:
www.example.com/audi/4doors/s4/sport/red/audi-url
basically all 6 urls are dynamic that I would specify in the each table
and would be in the PAGE as dropdowns also in others. What is the
optimal way to do that or optimize the model?
Here is a screenshot of TYPE page loading:
screenshot: http://cl.ly/image/2931040E0t35
Records:
auto_client = 3 rows
auto_category = 2 rows
auto_subcategory = 2 rows
auto_project = 5 rows
auto_type = 2 rows
auto_page = 0 - because cliking on auto_page it times out because of SQL
query. Basically togehter like 14 records thats nothing :)
here is also mysql query in PHPmyadmin: cl.ly/image/2S320h3d0P0J
<http://cl.ly/image/2S320h3d0P0J> 17 seconds
Please help thanks
|from django.db import models
class Client(models.Model):
title= models.CharField(max_length=100, unique=True)
def __unicode__(self):
return self.title
class Category(models.Model):
client= models.ForeignKey(Client, to_field='title')
title= models.CharField(max_length=200, unique=True)
def __unicode__(self):
return self.title
class Subcategory(models.Model):
client= models.ForeignKey(Client, to_field='title')
category= models.ForeignKey(Category, to_field='title')
title= models.CharField(max_length=200, unique=True)
def __unicode__(self):
return self.title
class Project(models.Model):
client= models.ForeignKey(Client, to_field='title')
category= models.ForeignKey(Category, to_field='title')
subcategory= models.ForeignKey(Subcategory, to_field='title')
title= models.CharField(max_length=200, unique=True)
def __unicode__(self):
return self.title
class Type(models.Model):
client= models.ForeignKey(Client, to_field='title')
category= models.ForeignKey(Category, to_field='title')
subcategory= models.ForeignKey(Subcategory, to_field='title')
project= models.ForeignKey(Project, to_field='title')
title= models.CharField(max_length=200, unique=True)
def __unicode__(self):
return self.title
class Page(models.Model):
client= models.ForeignKey(Client, to_field='title')
category= models.ForeignKey(Category, to_field='title')
subcategory= models.ForeignKey(Subcategory, to_field='title')
project= models.ForeignKey(Project, to_field='title')
type= models.ForeignKey(Type, to_field='title')
pageurl= models.CharField(max_length=200)|
By cliking on TYPE this is the SQL output that takes 17 secs, cant click on
last PAGE because thats so long - timed out:
|SELECT `auto_type`.`id`, `auto_type`.`client_id`,
`auto_type`.`category_id`, `auto_type`.`subcategory_id`,
`auto_type`.`project_id`, `auto_type`.`title`, `auto_client`.`id`,
`auto_client`.`title`, `auto_category`.`id`, `auto_category`.`client_id`,
`auto_category`.`title`, T4.`id`, T4.`title`, `auto_subcategory`.`id`,
`auto_subcategory`.`client_id`, `auto_subcategory`.`category_id`,
`auto_subcategory`.`title`, T6.`id`, T6.`title`, T7.`id`, T7.`client_id`,
T7.`title`, T8.`id`, T8.`title`, `auto_project`.`id`,
`auto_project`.`client_id`, `auto_project`.`category_id`,
`auto_project`.`subcategory_id`, `auto_project`.`title`, T10.`id`,
T10.`title`, T11.`id`, T11.`client_id`, T11.`title`, T12.`id`,
T12.`title`, T13.`id`, T13.`client_id`, T13.`category_id`, T13.`title`,
T14.`id`, T14.`title`, T15.`id`, T15.`client_id`, T15.`title`, T16.`id`,
T16.`title` FROM `auto_type` INNER JOIN `auto_client` ON
(`auto_type`.`client_id` = `auto_client`.`title`) INNER JOIN
`auto_category` ON (`auto_type`.`category_id` = `auto_category`.`title`)
INNER JOIN `auto_client` T4 ON (`auto_category`.`client_id` = T4.`title`)
INNER JOIN `auto_subcategory` ON (`auto_type`.`subcategory_id` =
`auto_subcategory`.`title`) INNER JOIN `auto_client` T6 ON
(`auto_subcategory`.`client_id` = T6.`title`) INNER JOIN `auto_category`
T7 ON (`auto_subcategory`.`category_id` = T7.`title`) INNER JOIN
`auto_client` T8 ON (T7.`client_id` = T8.`title`) INNER JOIN
`auto_project` ON (`auto_type`.`project_id` = `auto_project`.`title`)
INNER JOIN `auto_client` T10 ON (`auto_project`.`client_id` = T10.`title`)
INNER JOIN `auto_category` T11 ON (`auto_project`.`category_id` =
T11.`title`) INNER JOIN `auto_client` T12 ON (T11.`client_id` =
T12.`title`) INNER JOIN `auto_subcategory` T13 ON
(`auto_project`.`subcategory_id` = T13.`title`) INNER JOIN `auto_client`
T14 ON (T13.`client_id` = T14.`title`) INNER JOIN `auto_category` T15 ON
(T13.`category_id` = T15.`title`) INNER JOIN `auto_client` T16 ON
(T15.`client_id` = T16.`title`) ORDER BY `auto_type`.`id` DESC|
--
You received this message because you are subscribed to the Google
Groups "Django users" group.
To view this discussion on the web visit
https://groups.google.com/d/msg/django-users/-/C_zR-hp12oUJ.
To post to this group, send email to django-users@googlegroups.com.
To unsubscribe from this group, send email to
django-users+unsubscr...@googlegroups.com.
For more options, visit this group at
http://groups.google.com/group/django-users?hl=en.