Season 5 of The Monkie Kid has been released, and it comes with 4 new sets. I've already mentioned the plot in the review of set 80058-1 Celestial Pagoda, so I won't repeat it all here. But in short: The team is hunting for stones, one of which can be found in this set. Monkie Kid and Monkey King can travel by flight, but the rest of the team needs a vehicle to get around, and that vehicle is subject of today's review: 80055-1 Monkie Kid's Team Power Truck. In the conclusion of the Celestial Pagoda review, I mentioned that although being a great looking model, I had my doubts if the set, depicting a single building, would appeal to children who haven't watched the show and therefore wouldn't understand the details in the model. Would that hinder the play? So I've picked up the Monkie Kid's Team Power Truck for review as well, which I feel has more play-potential for 'uninformed' builders.
The Set
Give hero and adventure fans aged 7+, who love the 5th season of the TV show, this Monkie Kid’s Team Power Truck (80055) kids’ truck toy. The LEGO® Monkie Kid™ action vehicle set has a truck with a removable bed, a plane on a turntable, an excavator, Monkie Kid, Mei, Sandy, Pigsy and the 100-Eyed Demon action minifigures, and a Baby Mo the cat figure toy. The truck bed becomes a food stand with a flip-down grill and an opening window, and there’s a small rock build with the green Color Stone andlots of story starters for imaginative play.
This creative hero toy vehicle makes a cool gift and can be added to other sets in the range (each sold separately). Kids also get an intuitive building adventure with the LEGO Builder app, where they can zoom in, rotate models in 3D and track progress.
Fun, collectible LEGO Monkie Kid building toys are inspired by the classic Journey to the West novel and are a way for adults to share the Monkey King legend with children in a modern, playful way. From LEGO.com
RRP: €69.99 / $79.99 / £59.99 / AU$99.99
The Box
The box measures 72 x 282 x 456 mm and weighs 1200 grams. Inside we find 7 paper bags, 2 loose sticker sheets (one of which got a bit mangled in the box) and the building instructions. The box is of the old type, opening on the side. I wonder if this means the old type was still in stock for this size, or if the ratio of width/height doesn't allow for the new box type. I don't have other boxes in a similar ratio yet to draw a conclusion. The instruction manual comes with 186 building steps on 156 pages. The pdf can be downloaded here.
The Parts
The set contains 712 parts and 34 spares, in 33 colors, and 40 part categories, with a total of 322 unique parts/color combinations. Main colors are:
We start off with MK and the 100-eyed Demon, battling over the Green Stone. The 100-eyed Demon comes with a serpent to ride/transform into.
And if those body segments look familiar; you're correct. The throne found in the Celestial Pagoda can be used to extend the serpent! There is also a small sidebuild in the form of a pinball machine.
Then on the main build: the Power Truck. The sturdy base is made out of Technic beams and bricks.
In the back, a load of tiles are added. We'll see the use of those later on.
There are 2 hollow spaces underneath the cabin which would make the perfect spot for an Easter Egg, but they are left empty.
The front fender is added to the SNOT front.
The cabin is constructed. In the first image you can see the grey tops of the hinges that hold the windscreen under an angle.
All vehicles need a kitty-litter box. Next to the cabin we find this construction with a hinge and a turntable.
This is a seriously beefed up truck! Love it so far.
We make a side step to give Mei a small plane, which can be placed on the tower-thingy we saw earlier.
More Technic is added to hold the jet-propulsion.
The final stage is the tipper bed, where Pigsy has his kitchen.
The grill can be flipped around to show a communication center.
Another side-build; a cute little excavator in case the truck gets stuck in a ditch underneath a sign.
The tipper bed is finished up, with enough room for the excavator.
The kitchen comes with a window, so Pigsy can sell his noodles at the side of the road.
The tipper bed doesn't tip though! Instead, it slides along the beam in the back of the truck, and can be connected by a pin.
Conclusion
This is a ridiculously over the top beefy truck, and I love it! It fits perfectly in the Monkie Kid universe, with the right color scheme, style and details a vehicle for team MK needs. To test the playability, I've handed the model over to my 9yo, who hasn't seen the show yet. She directly started playing out her own stories, unhindered by her lack of knowledge of the source material. There is some room for improvement; I would have liked for the tipper bed to tip instead of slide. Some additional Technic beams would be able to drop the bed on the ground, so the excavator doesn't need to make a jump to get in and out. The test audience didn't have trouble with it though, so it's not really a fault. The model is pretty sturdy, and aside from the studs getting lost easily after shooting the barrel gun (still not comfortable seeing this thing in a LEGO set), no parts have come of yet despite intense playing. Overall, a great set that kids will have a blast playing with.
default
938.99 ms (58 queries
including 36 similar
and 12 duplicates
)
Query
Timeline
Time (ms)
Action
SELECT "blog_article"."id", "blog_article"."title", "blog_article"."author_id", "blog_article"."published_date", "blog_article"."is_active", "blog_article"."body", "blog_article"."meta_description", "blog_article"."meta_img", "blog_article"."slug", "blog_article"."category_id", "blog_article"."ads", "blog_article"."show_ads_for_set_num", "blog_article"."review_for_set_num", "blog_article"."status", "blog_article"."scheduled_net", "blog_article"."ready_for_review_date", "blog_article"."is_sensitive", "blog_article"."search_vector" FROM "blog_article" WHERE ("blog_article"."is_active" AND "blog_article"."id" = 742) LIMIT 21SELECT ••• FROM "blog_article" WHERE ("blog_article"."is_active" AND "blog_article"."id" = 742) LIMIT 21
9 similar queries.
0.50
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_article_w_slug(230)
return blog_article(request, article_id)/home/nathan/rb/site/./blog/views.py in blog_article(115)
article = get_object_or_404(Article, id=article_id)
SELECT "blog_article"."id", "blog_article"."title", "blog_article"."author_id", "blog_article"."published_date", "blog_article"."is_active", "blog_article"."body", "blog_article"."meta_description", "blog_article"."meta_img", "blog_article"."slug", "blog_article"."category_id", "blog_article"."ads", "blog_article"."show_ads_for_set_num", "blog_article"."review_for_set_num", "blog_article"."status", "blog_article"."scheduled_net", "blog_article"."ready_for_review_date", "blog_article"."is_sensitive", "blog_article"."search_vector", (SIMILARITY("blog_article"."title", 'Review: 80055-1 - Monkie Kid''s Team Power Truck') + SIMILARITY("blog_article"."body", 'Contents:
IntroductionThe SetThe BoxThe PartsThe FiguresThe BuildConclusion
Introduction
Season 5 of The Monkie Kid has been released, and it comes with 4 new sets. I''ve already mentioned the plot in the review of set 80058-1 Celestial Pagoda, so I won''t repeat it all here. But in short: The team is hunting for stones, one of which can be found in this set. Monkie Kid and Monkey King can travel by flight, but the rest of the team needs a vehicle to get around, and that vehicle is subject of today''s review: 80055-1 Monkie Kid''s Team Power Truck. In the conclusion of the Celestial Pagoda review, I mentioned that although being a great looking model, I had my doubts if the set, depicting a single building, would appeal to children who haven''t watched the show and therefore wouldn''t understand the details in the model. Would that hinder the play? So I''ve picked up the Monkie Kid''s Team Power Truck for review as well, which I feel has more play-potential for ''uninformed'' builders.
The Set
Give hero and adventure fans aged 7+, who love the 5th season of the TV show, this Monkie Kid’s Team Power Truck (80055) kids’ truck toy. The LEGO® Monkie Kid™ action vehicle set has a truck with a removable bed, a plane on a turntable, an excavator, Monkie Kid, Mei, Sandy, Pigsy and the 100-Eyed Demon action minifigures, and a Baby Mo the cat figure toy. The truck bed becomes a food stand with a flip-down grill and an opening window, and there’s a small rock build with the green Color Stone andlots of story starters for imaginative play.This creative hero toy vehicle makes a cool gift and can be added to other sets in the range (each sold separately). Kids also get an intuitive building adventure with the LEGO Builder app, where they can zoom in, rotate models in 3D and track progress.Fun, collectible LEGO Monkie Kid building toys are inspired by the classic Journey to the West novel and are a way for adults to share the Monkey King legend with children in a modern, playful way. From LEGO.com
RRP: €69.99 / $79.99 / £59.99 / AU$99.99
The Box
The box measures 72 x 282 x 456 mm and weighs 1200 grams. Inside we find 7 paper bags, 2 loose sticker sheets (one of which got a bit mangled in the box) and the building instructions. The box is of the old type, opening on the side. I wonder if this means the old type was still in stock for this size, or if the ratio of width/height doesn''t allow for the new box type. I don''t have other boxes in a similar ratio yet to draw a conclusion. The instruction manual comes with 186 building steps on 156 pages. The pdf can be downloaded here.
The Parts
The set contains 712 parts and 34 spares, in 33 colors, and 40 part categories, with a total of 322 unique parts/color combinations.Main colors are:
Red: 51 unique parts, 121 quantity.
White: 49 unique parts, 90 quantity.
Light Bluish Gray: 48 unique parts, 93 quantity.
Main categories are:
Plates Special: 55 unique parts, 131 quantity.
Plates: 36 unique parts, 79 quantity.
Bricks Sloped: 20 unique parts, 52 quantity.
New Parts
5518Plate Special 2 x 3 with Cloud Edge
105311pat0001Rock, Jewel in Pearl Gold Holder pattern
New Colors
36934Bicycle FrameYellow
5489Brick Round 2 x 2 D. Tube with 45° Elbow and Axle Holes (Crossholes) at Each End [LONG]Red
50335Construction Vehicle Bucket 3 x 6 with Hinge, Reinforced CenterOrange
41637Minifig Neckwear Armor Shoulder PadsDark Green
New Prints
')) AS "similarity", "auth_user"."id", "auth_user"."password", "auth_user"."last_login", "auth_user"."is_superuser", "auth_user"."username", "auth_user"."first_name", "auth_user"."last_name", "auth_user"."email", "auth_user"."is_staff", "auth_user"."is_active", "auth_user"."date_joined" FROM "blog_article" LEFT OUTER JOIN "auth_user" ON ("blog_article"."author_id" = "auth_user"."id") WHERE ("blog_article"."is_active" AND "blog_article"."published_date" > '2023-01-23T05:14:12.043027+00:00'::timestamptz ANDNOT ("blog_article"."id" = 742)) ORDER BY 19 DESC, "blog_article"."published_date" DESC LIMIT 20SELECT "blog_article"."id", "blog_article"."title", "blog_article"."author_id", "blog_article"."published_date", "blog_article"."is_active", "blog_article"."body", "blog_article"."meta_description", "blog_article"."meta_img", "blog_article"."slug", "blog_article"."category_id", "blog_article"."ads", "blog_article"."show_ads_for_set_num", "blog_article"."review_for_set_num", "blog_article"."status", "blog_article"."scheduled_net", "blog_article"."ready_for_review_date", "blog_article"."is_sensitive", "blog_article"."search_vector", (SIMILARITY("blog_article"."title", 'Review: 80055-1 - Monkie Kid''s Team Power Truck') + SIMILARITY("blog_article"."body", 'Contents:
IntroductionThe SetThe BoxThe PartsThe FiguresThe BuildConclusion
Introduction
Season 5 of The Monkie Kid has been released, and it comes with 4 new sets. I''ve already mentioned the plot in the review of set 80058-1 Celestial Pagoda, so I won''t repeat it all here. But in short: The team is hunting for stones, one of which can be found in this set. Monkie Kid and Monkey King can travel by flight, but the rest of the team needs a vehicle to get around, and that vehicle is subject of today''s review: 80055-1 Monkie Kid''s Team Power Truck. In the conclusion of the Celestial Pagoda review, I mentioned that although being a great looking model, I had my doubts if the set, depicting a single building, would appeal to children who haven''t watched the show and therefore wouldn''t understand the details in the model. Would that hinder the play? So I''ve picked up the Monkie Kid''s Team Power Truck for review as well, which I feel has more play-potential for ''uninformed'' builders.
The Set
Give hero and adventure fans aged 7+, who love the 5th season of the TV show, this Monkie Kid’s Team Power Truck (80055) kids’ truck toy. The LEGO® Monkie Kid™ action vehicle set has a truck with a removable bed, a plane on a turntable, an excavator, Monkie Kid, Mei, Sandy, Pigsy and the 100-Eyed Demon action minifigures, and a Baby Mo the cat figure toy. The truck bed becomes a food stand with a flip-down grill and an opening window, and there’s a small rock build with the green Color Stone andlots of story starters for imaginative play.This creative hero toy vehicle makes a cool gift and can be added to other sets in the range (each sold separately). Kids also get an intuitive building adventure with the LEGO Builder app, where they can zoom in, rotate models in 3D and track progress.Fun, collectible LEGO Monkie Kid building toys are inspired by the classic Journey to the West novel and are a way for adults to share the Monkey King legend with children in a modern, playful way. From LEGO.com
RRP: €69.99 / $79.99 / £59.99 / AU$99.99
The Box
The box measures 72 x 282 x 456 mm and weighs 1200 grams. Inside we find 7 paper bags, 2 loose sticker sheets (one of which got a bit mangled in the box) and the building instructions. The box is of the old type, opening on the side. I wonder if this means the old type was still in stock for this size, or if the ratio of width/height doesn''t allow for the new box type. I don''t have other boxes in a similar ratio yet to draw a conclusion. The instruction manual comes with 186 building steps on 156 pages. The pdf can be downloaded here.
The Parts
The set contains 712 parts and 34 spares, in 33 colors, and 40 part categories, with a total of 322 unique parts/color combinations.Main colors are:
Red: 51 unique parts, 121 quantity.
White: 49 unique parts, 90 quantity.
Light Bluish Gray: 48 unique parts, 93 quantity.
Main categories are:
Plates Special: 55 unique parts, 131 quantity.
Plates: 36 unique parts, 79 quantity.
Bricks Sloped: 20 unique parts, 52 quantity.
New Parts
5518Plate Special 2 x 3 with Cloud Edge
105311pat0001Rock, Jewel in Pearl Gold Holder pattern
New Colors
36934Bicycle FrameYellow
5489Brick Round 2 x 2 D. Tube with 45° Elbow and Axle Holes (Crossholes) at Each End [LONG]Red
50335Construction Vehicle Bucket 3 x 6 with Hinge, Reinforced CenterOrange
41637Minifig Neckwear Armor Shoulder PadsDark Green
New Prints
')) AS "similarity", "auth_user"."id", "auth_user"."password", "auth_user"."last_login", "auth_user"."is_superuser", "auth_user"."username", "auth_user"."first_name", "auth_user"."last_name", "auth_user"."email", "auth_user"."is_staff", "auth_user"."is_active", "auth_user"."date_joined" FROM "blog_article" LEFT OUTER JOIN "auth_user" ON ("blog_article"."author_id" = "auth_user"."id") WHERE ("blog_article"."is_active" AND "blog_article"."published_date" > '2023-01-23T05:14:12.043027+00:00'::timestamptz ANDNOT ("blog_article"."id" = 742)) ORDER BY 19 DESC, "blog_article"."published_date" DESCLIMIT 20
908.63
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_article_w_slug(230)
return blog_article(request, article_id)/home/nathan/rb/site/./blog/views.py in blog_article(208)
return cached_blog_article(request, article.id)/home/nathan/rb/site/./blog/views.py in cached_blog_article(145)
related_articles = article.get_related_articles(num_sidebar_posts)/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
result = method(instance, *args, **kwargs)/home/nathan/rb/site/./blog/models.py in get_related_articles(259)
return list(Article.objects.select_related('author').filter(published_date__gt=timezone.now()-timedelta(days=365*3)).annotate(similarity=TrigramSimilarity('title', self.title)+TrigramSimilarity('body', body)).exclude(id=self.id).order_by('-similarity', '-published_date')[:num])
SELECT "blog_article"."id", "blog_article"."title", "blog_article"."author_id", "blog_article"."published_date", "blog_article"."is_active", "blog_article"."body", "blog_article"."meta_description", "blog_article"."meta_img", "blog_article"."slug", "blog_article"."category_id", "blog_article"."ads", "blog_article"."show_ads_for_set_num", "blog_article"."review_for_set_num", "blog_article"."status", "blog_article"."scheduled_net", "blog_article"."ready_for_review_date", "blog_article"."is_sensitive", "blog_article"."search_vector", "auth_user"."id", "auth_user"."password", "auth_user"."last_login", "auth_user"."is_superuser", "auth_user"."username", "auth_user"."first_name", "auth_user"."last_name", "auth_user"."email", "auth_user"."is_staff", "auth_user"."is_active", "auth_user"."date_joined" FROM "blog_article" LEFT OUTER JOIN "auth_user" ON ("blog_article"."author_id" = "auth_user"."id") LEFT OUTER JOIN "blog_articlestats" ON ("blog_article"."id" = "blog_articlestats"."article_id") WHERE ("blog_article"."is_active" AND "blog_article"."published_date" > '2025-01-22T05:14:12.955140+00:00'::timestamptz) ORDER BY "blog_articlestats"."hits" DESC LIMIT 20SELECT ••• FROM "blog_article" LEFT OUTER JOIN "auth_user" ON ("blog_article"."author_id" = "auth_user"."id") LEFT OUTER JOIN "blog_articlestats" ON ("blog_article"."id" = "blog_articlestats"."article_id") WHERE ("blog_article"."is_active" AND "blog_article"."published_date" > '2025-01-22T05:14:12.955140+00:00'::timestamptz) ORDER BY "blog_articlestats"."hits" DESCLIMIT 20
2.60
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_article_w_slug(230)
return blog_article(request, article_id)/home/nathan/rb/site/./blog/views.py in blog_article(208)
return cached_blog_article(request, article.id)/home/nathan/rb/site/./blog/views.py in cached_blog_article(146)
popular_articles = Article.get_popular_articles(num_sidebar_posts)/home/nathan/rb/site/./cache/utils.py in cache_wrapper(101)
caches[cache_key].set(method_key, result, seconds)/home/nathan/venv_rb310/lib/python3.10/site-packages/pymemcache/client/hash.py in set(344)
return self._run_cmd("set", key, False, *args, **kwargs)/home/nathan/venv_rb310/lib/python3.10/site-packages/pymemcache/client/hash.py in _run_cmd(322)
return self._safely_run_func(client, func, default_val, *args, **kwargs)/home/nathan/venv_rb310/lib/python3.10/site-packages/pymemcache/client/hash.py in _safely_run_func(211)
result = func(*args, **kwargs)/home/nathan/venv_rb310/lib/python3.10/site-packages/pymemcache/client/base.py in set(1424)
return client.set(key, value, expire=expire, noreply=noreply, flags=flags)/home/nathan/venv_rb310/lib/python3.10/site-packages/pymemcache/client/base.py in set(475)
return self._store_cmd(b"set", {key: value}, expire, noreply, flags=flags)[key]/home/nathan/venv_rb310/lib/python3.10/site-packages/pymemcache/client/base.py in _store_cmd(1196)
data, data_flags = self.serde.serialize(key, data)/home/nathan/venv_rb310/lib/python3.10/site-packages/pymemcache/serde.py in serialize(119)
return self._serialize_func(key, value)/home/nathan/venv_rb310/lib/python3.10/site-packages/pymemcache/serde.py in _python_memcache_serializer(58)
pickler.dump(value)
SELECT "blog_article"."id", "blog_article"."title", "blog_article"."author_id", "blog_article"."published_date", "blog_article"."is_active", "blog_article"."body", "blog_article"."meta_description", "blog_article"."meta_img", "blog_article"."slug", "blog_article"."category_id", "blog_article"."ads", "blog_article"."show_ads_for_set_num", "blog_article"."review_for_set_num", "blog_article"."status", "blog_article"."scheduled_net", "blog_article"."ready_for_review_date", "blog_article"."is_sensitive", "blog_article"."search_vector" FROM "blog_article" WHERE ("blog_article"."is_active" AND "blog_article"."id" = 646) LIMIT 21SELECT ••• FROM "blog_article" WHERE ("blog_article"."is_active" AND "blog_article"."id" = 646) LIMIT 21
9 similar queries.
0.24
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_article_w_slug(230)
return blog_article(request, article_id)/home/nathan/rb/site/./blog/views.py in blog_article(208)
return cached_blog_article(request, article.id)/home/nathan/rb/site/./blog/views.py in cached_blog_article(147)
article_series_images = get_series()/home/nathan/rb/site/./blog/views.py in get_series(50)
{'name': 'Designer Spotlights', 'tag': 'designer-spotlight', 'article': Article.objects.get(id=646)},
SELECT "blog_article"."id", "blog_article"."title", "blog_article"."author_id", "blog_article"."published_date", "blog_article"."is_active", "blog_article"."body", "blog_article"."meta_description", "blog_article"."meta_img", "blog_article"."slug", "blog_article"."category_id", "blog_article"."ads", "blog_article"."show_ads_for_set_num", "blog_article"."review_for_set_num", "blog_article"."status", "blog_article"."scheduled_net", "blog_article"."ready_for_review_date", "blog_article"."is_sensitive", "blog_article"."search_vector" FROM "blog_article" WHERE ("blog_article"."is_active" AND "blog_article"."id" = 605) LIMIT 21SELECT ••• FROM "blog_article" WHERE ("blog_article"."is_active" AND "blog_article"."id" = 605) LIMIT 21
9 similar queries.
0.25
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_article_w_slug(230)
return blog_article(request, article_id)/home/nathan/rb/site/./blog/views.py in blog_article(208)
return cached_blog_article(request, article.id)/home/nathan/rb/site/./blog/views.py in cached_blog_article(147)
article_series_images = get_series()/home/nathan/rb/site/./blog/views.py in get_series(51)
{'name': 'Into the Archives', 'tag': 'into-the-archives', 'article': Article.objects.get(id=605)},
SELECT "blog_article"."id", "blog_article"."title", "blog_article"."author_id", "blog_article"."published_date", "blog_article"."is_active", "blog_article"."body", "blog_article"."meta_description", "blog_article"."meta_img", "blog_article"."slug", "blog_article"."category_id", "blog_article"."ads", "blog_article"."show_ads_for_set_num", "blog_article"."review_for_set_num", "blog_article"."status", "blog_article"."scheduled_net", "blog_article"."ready_for_review_date", "blog_article"."is_sensitive", "blog_article"."search_vector" FROM "blog_article" WHERE ("blog_article"."is_active" AND "blog_article"."id" = 705) LIMIT 21SELECT ••• FROM "blog_article" WHERE ("blog_article"."is_active" AND "blog_article"."id" = 705) LIMIT 21
9 similar queries.
0.31
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_article_w_slug(230)
return blog_article(request, article_id)/home/nathan/rb/site/./blog/views.py in blog_article(208)
return cached_blog_article(request, article.id)/home/nathan/rb/site/./blog/views.py in cached_blog_article(147)
article_series_images = get_series()/home/nathan/rb/site/./blog/views.py in get_series(52)
{'name': 'Mini MOC Madness', 'tag': 'mini-moc-madness', 'article': Article.objects.get(id=705)},
SELECT "blog_article"."id", "blog_article"."title", "blog_article"."author_id", "blog_article"."published_date", "blog_article"."is_active", "blog_article"."body", "blog_article"."meta_description", "blog_article"."meta_img", "blog_article"."slug", "blog_article"."category_id", "blog_article"."ads", "blog_article"."show_ads_for_set_num", "blog_article"."review_for_set_num", "blog_article"."status", "blog_article"."scheduled_net", "blog_article"."ready_for_review_date", "blog_article"."is_sensitive", "blog_article"."search_vector" FROM "blog_article" WHERE ("blog_article"."is_active" AND "blog_article"."id" = 616) LIMIT 21SELECT ••• FROM "blog_article" WHERE ("blog_article"."is_active" AND "blog_article"."id" = 616) LIMIT 21
9 similar queries.
0.24
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_article_w_slug(230)
return blog_article(request, article_id)/home/nathan/rb/site/./blog/views.py in blog_article(208)
return cached_blog_article(request, article.id)/home/nathan/rb/site/./blog/views.py in cached_blog_article(147)
article_series_images = get_series()/home/nathan/rb/site/./blog/views.py in get_series(53)
{'name': 'Is This LEGO?', 'tag': 'is-this-lego', 'article': Article.objects.get(id=616)},
SELECT "blog_article"."id", "blog_article"."title", "blog_article"."author_id", "blog_article"."published_date", "blog_article"."is_active", "blog_article"."body", "blog_article"."meta_description", "blog_article"."meta_img", "blog_article"."slug", "blog_article"."category_id", "blog_article"."ads", "blog_article"."show_ads_for_set_num", "blog_article"."review_for_set_num", "blog_article"."status", "blog_article"."scheduled_net", "blog_article"."ready_for_review_date", "blog_article"."is_sensitive", "blog_article"."search_vector" FROM "blog_article" WHERE ("blog_article"."is_active" AND "blog_article"."id" = 279) LIMIT 21SELECT ••• FROM "blog_article" WHERE ("blog_article"."is_active" AND "blog_article"."id" = 279) LIMIT 21
9 similar queries.
0.21
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_article_w_slug(230)
return blog_article(request, article_id)/home/nathan/rb/site/./blog/views.py in blog_article(208)
return cached_blog_article(request, article.id)/home/nathan/rb/site/./blog/views.py in cached_blog_article(147)
article_series_images = get_series()/home/nathan/rb/site/./blog/views.py in get_series(54)
{'name': 'Rebricksberg', 'tag': 'rebricksberg', 'article': Article.objects.get(id=279)},
SELECT "blog_article"."id", "blog_article"."title", "blog_article"."author_id", "blog_article"."published_date", "blog_article"."is_active", "blog_article"."body", "blog_article"."meta_description", "blog_article"."meta_img", "blog_article"."slug", "blog_article"."category_id", "blog_article"."ads", "blog_article"."show_ads_for_set_num", "blog_article"."review_for_set_num", "blog_article"."status", "blog_article"."scheduled_net", "blog_article"."ready_for_review_date", "blog_article"."is_sensitive", "blog_article"."search_vector" FROM "blog_article" WHERE ("blog_article"."is_active" AND "blog_article"."id" = 720) LIMIT 21SELECT ••• FROM "blog_article" WHERE ("blog_article"."is_active" AND "blog_article"."id" = 720) LIMIT 21
9 similar queries.
0.33
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_article_w_slug(230)
return blog_article(request, article_id)/home/nathan/rb/site/./blog/views.py in blog_article(208)
return cached_blog_article(request, article.id)/home/nathan/rb/site/./blog/views.py in cached_blog_article(147)
article_series_images = get_series()/home/nathan/rb/site/./blog/views.py in get_series(55)
{'name': 'New Set Releases', 'tag': 'sets', 'article': Article.objects.get(id=720)},
SELECT "blog_article"."id", "blog_article"."title", "blog_article"."author_id", "blog_article"."published_date", "blog_article"."is_active", "blog_article"."body", "blog_article"."meta_description", "blog_article"."meta_img", "blog_article"."slug", "blog_article"."category_id", "blog_article"."ads", "blog_article"."show_ads_for_set_num", "blog_article"."review_for_set_num", "blog_article"."status", "blog_article"."scheduled_net", "blog_article"."ready_for_review_date", "blog_article"."is_sensitive", "blog_article"."search_vector" FROM "blog_article" WHERE ("blog_article"."is_active" AND "blog_article"."id" = 462) LIMIT 21SELECT ••• FROM "blog_article" WHERE ("blog_article"."is_active" AND "blog_article"."id" = 462) LIMIT 21
9 similar queries.
0.24
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_article_w_slug(230)
return blog_article(request, article_id)/home/nathan/rb/site/./blog/views.py in blog_article(208)
return cached_blog_article(request, article.id)/home/nathan/rb/site/./blog/views.py in cached_blog_article(147)
article_series_images = get_series()/home/nathan/rb/site/./blog/views.py in get_series(56)
{'name': 'Tips & Useful Info', 'tag': 'tips', 'article': Article.objects.get(id=462)},
SELECT "blog_article"."id", "blog_article"."title", "blog_article"."author_id", "blog_article"."published_date", "blog_article"."is_active", "blog_article"."body", "blog_article"."meta_description", "blog_article"."meta_img", "blog_article"."slug", "blog_article"."category_id", "blog_article"."ads", "blog_article"."show_ads_for_set_num", "blog_article"."review_for_set_num", "blog_article"."status", "blog_article"."scheduled_net", "blog_article"."ready_for_review_date", "blog_article"."is_sensitive", "blog_article"."search_vector" FROM "blog_article" WHERE ("blog_article"."is_active" AND "blog_article"."id" = 249) LIMIT 21SELECT ••• FROM "blog_article" WHERE ("blog_article"."is_active" AND "blog_article"."id" = 249) LIMIT 21
9 similar queries.
0.14
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_article_w_slug(230)
return blog_article(request, article_id)/home/nathan/rb/site/./blog/views.py in blog_article(208)
return cached_blog_article(request, article.id)/home/nathan/rb/site/./blog/views.py in cached_blog_article(147)
article_series_images = get_series()/home/nathan/rb/site/./blog/views.py in get_series(57)
{'name': 'The Good, The Bad, & The Ugly', 'tag': 'good-bad-ugly', 'article': Article.objects.get(id=249)}
SELECT "blog_article"."id", "blog_article"."title", "blog_article"."author_id", "blog_article"."published_date", "blog_article"."is_active", "blog_article"."body", "blog_article"."meta_description", "blog_article"."meta_img", "blog_article"."slug", "blog_article"."category_id", "blog_article"."ads", "blog_article"."show_ads_for_set_num", "blog_article"."review_for_set_num", "blog_article"."status", "blog_article"."scheduled_net", "blog_article"."ready_for_review_date", "blog_article"."is_sensitive", "blog_article"."search_vector" FROM "blog_article" WHERE ("blog_article"."is_active" AND (("blog_article"."published_date" = '2024-09-12T00:00:00.074453+00:00'::timestamptz AND "blog_article"."id" > 742) OR "blog_article"."published_date" > '2024-09-12T00:00:00.074453+00:00'::timestamptz)) ORDER BY "blog_article"."published_date" ASC, "blog_article"."id" ASC LIMIT 1SELECT ••• FROM "blog_article" WHERE ("blog_article"."is_active" AND (("blog_article"."published_date" = '2024-09-12T00:00:00.074453+00:00'::timestamptz AND "blog_article"."id" > 742) OR "blog_article"."published_date" > '2024-09-12T00:00:00.074453+00:00'::timestamptz)) ORDER BY "blog_article"."published_date" ASC, "blog_article"."id" ASCLIMIT 1
0.45
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_article_w_slug(230)
return blog_article(request, article_id)/home/nathan/rb/site/./blog/views.py in blog_article(208)
return cached_blog_article(request, article.id)/home/nathan/rb/site/./blog/views.py in cached_blog_article(152)
article.next = Article.get_next_by_published_date(article)/usr/lib/python3.10/functools.py in _method(388)
return self.func(cls_or_self, *self.args, *args, **keywords)
SELECT "blog_article"."id", "blog_article"."title", "blog_article"."author_id", "blog_article"."published_date", "blog_article"."is_active", "blog_article"."body", "blog_article"."meta_description", "blog_article"."meta_img", "blog_article"."slug", "blog_article"."category_id", "blog_article"."ads", "blog_article"."show_ads_for_set_num", "blog_article"."review_for_set_num", "blog_article"."status", "blog_article"."scheduled_net", "blog_article"."ready_for_review_date", "blog_article"."is_sensitive", "blog_article"."search_vector" FROM "blog_article" WHERE ("blog_article"."is_active" AND (("blog_article"."published_date" = '2024-09-12T00:00:00.074453+00:00'::timestamptz AND "blog_article"."id" < 742) OR "blog_article"."published_date" < '2024-09-12T00:00:00.074453+00:00'::timestamptz)) ORDER BY "blog_article"."published_date" DESC, "blog_article"."id" DESC LIMIT 1SELECT ••• FROM "blog_article" WHERE ("blog_article"."is_active" AND (("blog_article"."published_date" = '2024-09-12T00:00:00.074453+00:00'::timestamptz AND "blog_article"."id" < 742) OR "blog_article"."published_date" < '2024-09-12T00:00:00.074453+00:00'::timestamptz)) ORDER BY "blog_article"."published_date" DESC, "blog_article"."id" DESCLIMIT 1
0.52
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_article_w_slug(230)
return blog_article(request, article_id)/home/nathan/rb/site/./blog/views.py in blog_article(208)
return cached_blog_article(request, article.id)/home/nathan/rb/site/./blog/views.py in cached_blog_article(156)
article.prev = Article.get_previous_by_published_date(article)/usr/lib/python3.10/functools.py in _method(388)
return self.func(cls_or_self, *self.args, *args, **keywords)
SELECT "lego_baseset"."id", "lego_baseset"."set_num", "lego_baseset"."name", "lego_baseset"."year", "lego_baseset"."theme_id", "lego_baseset"."set_type", "lego_baseset"."num_parts", "lego_baseset"."default_inventory_id", "lego_baseset"."is_active", "lego_baseset"."is_accessory", "lego_baseset"."added_dt", "lego_baseset"."added_by_id", "lego_baseset"."last_modified_dt", "lego_baseset"."last_modified_by_id", "lego_baseset"."last_checked_for_bi", "lego_baseset"."descr", "lego_baseset"."primary_photo_id", "lego_baseset"."is_gear", "lego_baseset"."is_book", "lego_baseset"."search_vector", "lego_baseset"."mfhash_vector" FROM "lego_baseset" WHERE "lego_baseset"."set_num" = '80055-1' LIMIT 21SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."set_num" = '80055-1' LIMIT 21
0.12
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_article_w_slug(230)
return blog_article(request, article_id)/home/nathan/rb/site/./blog/views.py in blog_article(208)
return cached_blog_article(request, article.id)/home/nathan/rb/site/./blog/views.py in cached_blog_article(187)
context['reviewed_sets'] = article.get_reviewed_sets/home/nathan/rb/site/./blog/models.py in get_reviewed_sets(146)
sets.append(BaseSet.all_objects.get(set_num=sn))
SELECT "lego_baseset"."id", "lego_baseset"."set_num", "lego_baseset"."name", "lego_baseset"."year", "lego_baseset"."theme_id", "lego_baseset"."set_type", "lego_baseset"."num_parts", "lego_baseset"."default_inventory_id", "lego_baseset"."is_active", "lego_baseset"."is_accessory", "lego_baseset"."added_dt", "lego_baseset"."added_by_id", "lego_baseset"."last_modified_dt", "lego_baseset"."last_modified_by_id", "lego_baseset"."last_checked_for_bi", "lego_baseset"."descr", "lego_baseset"."primary_photo_id", "lego_baseset"."is_gear", "lego_baseset"."is_book", "lego_baseset"."search_vector", "lego_baseset"."mfhash_vector", "lego_set"."baseset_ptr_id", "lego_set"."start_date", "lego_set"."end_date", "lego_theme"."id", "lego_theme"."parent_id", "lego_theme"."name", "lego_theme"."slug", "lego_theme"."set_count", "lego_theme"."t1_id", "lego_theme"."t1_name", "lego_theme"."t2_name", "lego_theme"."t3_name", "lego_theme"."lego_blurb", "lego_theme"."banner_img", "lego_theme"."descr", T4."id", T4."parent_id", T4."name", T4."slug", T4."set_count", T4."t1_id", T4."t1_name", T4."t2_name", T4."t3_name", T4."lego_blurb", T4."banner_img", T4."descr", T5."id", T5."parent_id", T5."name", T5."slug", T5."set_count", T5."t1_id", T5."t1_name", T5."t2_name", T5."t3_name", T5."lego_blurb", T5."banner_img", T5."descr", "lego_setstatstotal"."set_id", "lego_setstatstotal"."hits", "lego_setstatstotal"."builds", "lego_setstatstotal"."likes", "lego_setstatstotal"."bi_downloads", "lego_setstatstotal"."featured_hits", "lego_setstatstotal"."user_hits" FROM "lego_set" INNER JOIN "lego_baseset" ON ("lego_set"."baseset_ptr_id" = "lego_baseset"."id") INNER JOIN "lego_theme" ON ("lego_baseset"."theme_id" = "lego_theme"."id") LEFT OUTER JOIN "lego_theme" T4 ON ("lego_theme"."parent_id" = T4."id") LEFT OUTER JOIN "lego_theme" T5 ON (T4."parent_id" = T5."id") LEFT OUTER JOIN "lego_setstatstotal" ON ("lego_baseset"."id" = "lego_setstatstotal"."set_id") WHERE ("lego_baseset"."is_active" AND "lego_baseset"."set_num" = '80055-1') LIMIT 21SELECT ••• FROM "lego_set" INNER JOIN "lego_baseset" ON ("lego_set"."baseset_ptr_id" = "lego_baseset"."id") INNER JOIN "lego_theme" ON ("lego_baseset"."theme_id" = "lego_theme"."id") LEFT OUTER JOIN "lego_theme" T4 ON ("lego_theme"."parent_id" = T4."id") LEFT OUTER JOIN "lego_theme" T5 ON (T4."parent_id" = T5."id") LEFT OUTER JOIN "lego_setstatstotal" ON ("lego_baseset"."id" = "lego_setstatstotal"."set_id") WHERE ("lego_baseset"."is_active" AND "lego_baseset"."set_num" = '80055-1') LIMIT 21
0.62
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_article_w_slug(230)
return blog_article(request, article_id)/home/nathan/rb/site/./blog/views.py in blog_article(208)
return cached_blog_article(request, article.id)/home/nathan/rb/site/./blog/views.py in cached_blog_article(200)
context['lego_affiliate_links'] = get_lego_affiliate_links(article.show_ads_for_set_num_short)/home/nathan/rb/site/./lego/buy/sets.py in get_lego_affiliate_links(474)
set = get_or_none(Set.objects, set_num=set_num + '-1')/home/nathan/rb/site/./rb/utils.py in get_or_none(605)
return manager.get(**kwargs)
SELECTDISTINCT ("taggit_taggeditem"."object_id") AS "_prefetch_related_val", "taggit_tag"."id", "taggit_tag"."name", "taggit_tag"."slug" FROM "taggit_tag" INNER JOIN "taggit_taggeditem" ON ("taggit_tag"."id" = "taggit_taggeditem"."tag_id") INNER JOIN "django_content_type" ON ("taggit_taggeditem"."content_type_id" = "django_content_type"."id") WHERE ("django_content_type"."app_label" = 'lego' AND "django_content_type"."model" = 'set' AND "taggit_taggeditem"."object_id" IN (218251))SELECT ••• FROM "taggit_tag" INNER JOIN "taggit_taggeditem" ON ("taggit_tag"."id" = "taggit_taggeditem"."tag_id") INNER JOIN "django_content_type" ON ("taggit_taggeditem"."content_type_id" = "django_content_type"."id") WHERE ("django_content_type"."app_label" = 'lego' AND "django_content_type"."model" = 'set' AND "taggit_taggeditem"."object_id" IN (218251))
0.36
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_article_w_slug(230)
return blog_article(request, article_id)/home/nathan/rb/site/./blog/views.py in blog_article(208)
return cached_blog_article(request, article.id)/home/nathan/rb/site/./blog/views.py in cached_blog_article(200)
context['lego_affiliate_links'] = get_lego_affiliate_links(article.show_ads_for_set_num_short)/home/nathan/rb/site/./lego/buy/sets.py in get_lego_affiliate_links(474)
set = get_or_none(Set.objects, set_num=set_num + '-1')/home/nathan/rb/site/./rb/utils.py in get_or_none(605)
return manager.get(**kwargs)
SELECT "lego_storesetitem"."id", "lego_storesetitem"."store_id", "lego_storesetitem"."is_used", "lego_storesetitem"."cost", "lego_storesetitem"."cost_usd", "lego_storesetitem"."sale_cost", "lego_storesetitem"."sku", "lego_storesetitem"."item_url", "lego_storesetitem"."quantity", "lego_storesetitem"."timestamp", "lego_storesetitem"."set_id", "lego_store"."id", "lego_store"."name", "lego_store"."is_active", "lego_store"."store_url", "lego_store"."add_item_url", "lego_store"."feed_url", "lego_store"."tag_line", "lego_store"."currency_code", "lego_store"."country_code", "lego_store"."bricklink_sellername", "lego_store"."ships_to" FROM "lego_storesetitem" INNER JOIN "lego_store" ON ("lego_storesetitem"."store_id" = "lego_store"."id") WHERE (NOT "lego_storesetitem"."is_used" AND "lego_storesetitem"."set_id" = 218251 AND "lego_storesetitem"."store_id" IN (SELECT U0."id" FROM "lego_store" U0 WHERE (U0."is_active" AND UPPER(U0."store_url"::text) LIKE UPPER('%linksynergy.com%'))))SELECT ••• FROM "lego_storesetitem" INNER JOIN "lego_store" ON ("lego_storesetitem"."store_id" = "lego_store"."id") WHERE (NOT "lego_storesetitem"."is_used" AND "lego_storesetitem"."set_id" = 218251 AND "lego_storesetitem"."store_id" IN (SELECT ••• FROM "lego_store" U0 WHERE (U0."is_active" AND UPPER(U0."store_url"::text) LIKE UPPER('%linksynergy.com%'))))
0.47
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_article_w_slug(230)
return blog_article(request, article_id)/home/nathan/rb/site/./blog/views.py in blog_article(208)
return cached_blog_article(request, article.id)/home/nathan/rb/site/./blog/views.py in cached_blog_article(200)
context['lego_affiliate_links'] = get_lego_affiliate_links(article.show_ads_for_set_num_short)/home/nathan/rb/site/./lego/buy/sets.py in get_lego_affiliate_links(480)
if not items:
SELECT "lego_baseset"."id", "lego_baseset"."set_num", "lego_baseset"."name", "lego_baseset"."year", "lego_baseset"."theme_id", "lego_baseset"."set_type", "lego_baseset"."num_parts", "lego_baseset"."default_inventory_id", "lego_baseset"."is_active", "lego_baseset"."is_accessory", "lego_baseset"."added_dt", "lego_baseset"."added_by_id", "lego_baseset"."last_modified_dt", "lego_baseset"."last_modified_by_id", "lego_baseset"."last_checked_for_bi", "lego_baseset"."descr", "lego_baseset"."primary_photo_id", "lego_baseset"."is_gear", "lego_baseset"."is_book", "lego_baseset"."search_vector", "lego_baseset"."mfhash_vector", "lego_theme"."id", "lego_theme"."parent_id", "lego_theme"."name", "lego_theme"."slug", "lego_theme"."set_count", "lego_theme"."t1_id", "lego_theme"."t1_name", "lego_theme"."t2_name", "lego_theme"."t3_name", "lego_theme"."lego_blurb", "lego_theme"."banner_img", "lego_theme"."descr", T3."id", T3."parent_id", T3."name", T3."slug", T3."set_count", T3."t1_id", T3."t1_name", T3."t2_name", T3."t3_name", T3."lego_blurb", T3."banner_img", T3."descr", T4."id", T4."parent_id", T4."name", T4."slug", T4."set_count", T4."t1_id", T4."t1_name", T4."t2_name", T4."t3_name", T4."lego_blurb", T4."banner_img", T4."descr", "lego_setstatstotal"."set_id", "lego_setstatstotal"."hits", "lego_setstatstotal"."builds", "lego_setstatstotal"."likes", "lego_setstatstotal"."bi_downloads", "lego_setstatstotal"."featured_hits", "lego_setstatstotal"."user_hits" FROM "lego_baseset" INNER JOIN "lego_theme" ON ("lego_baseset"."theme_id" = "lego_theme"."id") LEFT OUTER JOIN "lego_theme" T3 ON ("lego_theme"."parent_id" = T3."id") LEFT OUTER JOIN "lego_theme" T4 ON (T3."parent_id" = T4."id") LEFT OUTER JOIN "lego_setstatstotal" ON ("lego_baseset"."id" = "lego_setstatstotal"."set_id") WHERE ("lego_baseset"."is_active" AND "lego_baseset"."set_num" = '80055-1') LIMIT 21SELECT ••• FROM "lego_baseset" INNER JOIN "lego_theme" ON ("lego_baseset"."theme_id" = "lego_theme"."id") LEFT OUTER JOIN "lego_theme" T3 ON ("lego_theme"."parent_id" = T3."id") LEFT OUTER JOIN "lego_theme" T4 ON (T3."parent_id" = T4."id") LEFT OUTER JOIN "lego_setstatstotal" ON ("lego_baseset"."id" = "lego_setstatstotal"."set_id") WHERE ("lego_baseset"."is_active" AND "lego_baseset"."set_num" = '80055-1') LIMIT 21
0.40
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_article_w_slug(230)
return blog_article(request, article_id)/home/nathan/rb/site/./blog/views.py in blog_article(208)
return cached_blog_article(request, article.id)/home/nathan/rb/site/./blog/views.py in cached_blog_article(201)
context['lego_affiliate_links_set'] = get_or_none(BaseSet.objects, set_num=article.show_ads_for_set_num_short + '-1')/home/nathan/rb/site/./rb/utils.py in get_or_none(605)
return manager.get(**kwargs)
SELECT "auth_user"."id", "auth_user"."password", "auth_user"."last_login", "auth_user"."is_superuser", "auth_user"."username", "auth_user"."first_name", "auth_user"."last_name", "auth_user"."email", "auth_user"."is_staff", "auth_user"."is_active", "auth_user"."date_joined" FROM "auth_user" WHERE "auth_user"."id" = 17788 LIMIT 21SELECT ••• FROM "auth_user" WHERE "auth_user"."id" = 17788 LIMIT 21
0.15
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_article_w_slug(230)
return blog_article(request, article_id)/home/nathan/rb/site/./blog/views.py in blog_article(208)
return cached_blog_article(request, article.id)/home/nathan/rb/site/./blog/views.py in cached_blog_article(206)
return render(request, 'blog/blog_article.html', context)
SELECT "rb_sitesettings"."id", "rb_sitesettings"."name", "rb_sitesettings"."value" FROM "rb_sitesettings" WHERE "rb_sitesettings"."name" = 'site_message' LIMIT 21SELECT ••• FROM "rb_sitesettings" WHERE "rb_sitesettings"."name" = 'site_message' LIMIT 21
0.09
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_article_w_slug(230)
return blog_article(request, article_id)/home/nathan/rb/site/./blog/views.py in blog_article(208)
return cached_blog_article(request, article.id)/home/nathan/rb/site/./blog/views.py in cached_blog_article(206)
return render(request, 'blog/blog_article.html', context)/home/nathan/rb/site/./rb/templatetags/rb_settings.py in site_message(147)
message = SiteSettings.get_site_message()/home/nathan/rb/site/./cache/utils.py in cache_wrapper(98)
result = method(instance, *args, **kwargs)/home/nathan/rb/site/./rb/models/site.py in get_site_message(24)
setting = cls.objects.get(name=SiteSettings.SITE_MESSAGE)
SELECT "countries_plus_country"."iso", "countries_plus_country"."iso3", "countries_plus_country"."iso_numeric", "countries_plus_country"."fips", "countries_plus_country"."name", "countries_plus_country"."capital", "countries_plus_country"."area", "countries_plus_country"."population", "countries_plus_country"."continent", "countries_plus_country"."tld", "countries_plus_country"."currency_code", "countries_plus_country"."currency_symbol", "countries_plus_country"."currency_name", "countries_plus_country"."phone", "countries_plus_country"."postal_code_format", "countries_plus_country"."postal_code_regex", "countries_plus_country"."languages", "countries_plus_country"."geonameid", "countries_plus_country"."neighbours", "countries_plus_country"."equivalent_fips_code" FROM "countries_plus_country" WHERE "countries_plus_country"."iso" = 'US' LIMIT 21SELECT ••• FROM "countries_plus_country" WHERE "countries_plus_country"."iso" = 'US' LIMIT 21
0.14
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_article_w_slug(230)
return blog_article(request, article_id)/home/nathan/rb/site/./blog/views.py in blog_article(208)
return cached_blog_article(request, article.id)/home/nathan/rb/site/./blog/views.py in cached_blog_article(206)
return render(request, 'blog/blog_article.html', context)/home/nathan/rb/site/./rb/templatetags/rb_geo.py in geo_currency(20)
geo_data = user.geo.get_user_currency()/home/nathan/rb/site/./geo/geo.py in get_user_currency(252)
country = Country.objects.get(iso=country_code)
412
</a>
413
</li>
414
<li class="hidden-xs">
415
{% geo_currency request.user %}
416
</li>
417
{% comment %}
418
<li class="hidden-xs hidden-sm">
419
<a href={% if request.user.is_authenticated %}"{% url 'user_profile_settings' request.user.get_username %}#personalisation"{% else %}"#" onclick="return false;"{% endif %} title="All date/times are being converted to this timezone">{% get_user_timezone request.user %}</a>
SELECT "blog_articlecategory"."id", "blog_articlecategory"."name" FROM "blog_articlecategory" WHERE "blog_articlecategory"."id" = 1 LIMIT 21SELECT ••• FROM "blog_articlecategory" WHERE "blog_articlecategory"."id" = 1 LIMIT 21
0.09
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_article_w_slug(230)
return blog_article(request, article_id)/home/nathan/rb/site/./blog/views.py in blog_article(208)
return cached_blog_article(request, article.id)/home/nathan/rb/site/./blog/views.py in cached_blog_article(206)
return render(request, 'blog/blog_article.html', context)
SELECT "auth_user"."id", "auth_user"."password", "auth_user"."last_login", "auth_user"."is_superuser", "auth_user"."username", "auth_user"."first_name", "auth_user"."last_name", "auth_user"."email", "auth_user"."is_staff", "auth_user"."is_active", "auth_user"."date_joined" FROM "auth_user" WHERE "auth_user"."username" = 'TobyMac' LIMIT 21SELECT ••• FROM "auth_user" WHERE "auth_user"."username" = 'TobyMac' LIMIT 21
0.14
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_article_w_slug(230)
return blog_article(request, article_id)/home/nathan/rb/site/./blog/views.py in blog_article(208)
return cached_blog_article(request, article.id)/home/nathan/rb/site/./blog/views.py in cached_blog_article(206)
return render(request, 'blog/blog_article.html', context)/home/nathan/rb/site/./avatar/templatetags/avatar_tags.py in avatar_url(33)
avatar_url = provider.get_avatar_url(user, size)/home/nathan/rb/site/./avatar/providers.py in get_avatar_url(48)
avatar = get_primary_avatar(user, size)/home/nathan/rb/site/./avatar/utils.py in get_primary_avatar(112)
user = get_user(user)/home/nathan/rb/site/./avatar/utils.py in get_user(33)
return get_user_model().objects.get_by_natural_key(username)
SELECT "avatar_avatar"."id", "avatar_avatar"."user_id", "avatar_avatar"."primary", "avatar_avatar"."avatar", "avatar_avatar"."date_uploaded" FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 17788 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 17788 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESCLIMIT 1
4 similar queries.
0.13
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_article_w_slug(230)
return blog_article(request, article_id)/home/nathan/rb/site/./blog/views.py in blog_article(208)
return cached_blog_article(request, article.id)/home/nathan/rb/site/./blog/views.py in cached_blog_article(206)
return render(request, 'blog/blog_article.html', context)/home/nathan/rb/site/./avatar/templatetags/avatar_tags.py in avatar_url(33)
avatar_url = provider.get_avatar_url(user, size)/home/nathan/rb/site/./avatar/providers.py in get_avatar_url(48)
avatar = get_primary_avatar(user, size)/home/nathan/rb/site/./avatar/utils.py in get_primary_avatar(120)
avatar = user.avatar_set.order_by("-primary", "-date_uploaded")[0]
SELECT COUNT(*) AS "__count" FROM "threadedcomments_comment" INNER JOIN "django_comments" ON ("threadedcomments_comment"."comment_ptr_id" = "django_comments"."id") WHERE ("django_comments"."content_type_id" = 12 AND "django_comments"."object_pk" = '742' AND "django_comments"."site_id" = 1 AND "django_comments"."is_public" ANDNOT "django_comments"."is_removed")SELECT ••• FROM "threadedcomments_comment" INNER JOIN "django_comments" ON ("threadedcomments_comment"."comment_ptr_id" = "django_comments"."id") WHERE ("django_comments"."content_type_id" = 12 AND "django_comments"."object_pk" = '742' AND "django_comments"."site_id" = 1 AND "django_comments"."is_public" ANDNOT "django_comments"."is_removed")
2 similar queries.
Duplicated 2 times.
0.33
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_article_w_slug(230)
return blog_article(request, article_id)/home/nathan/rb/site/./blog/views.py in blog_article(208)
return cached_blog_article(request, article.id)/home/nathan/rb/site/./blog/views.py in cached_blog_article(206)
return render(request, 'blog/blog_article.html', context)/home/nathan/venv_rb310/lib/python3.10/site-packages/django_comments/templatetags/comments.py in render(72)
context[self.as_varname] = self.get_context_value_from_queryset(context, qs)/home/nathan/venv_rb310/lib/python3.10/site-packages/threadedcomments/templatetags/threadedcomments_tags.py in get_context_value_from_queryset(116)
return qs.count()
18
</a>
19
</li>
20
21
{% get_comment_count for article as num_comments %}
SELECT "blog_articlestats"."article_id", "blog_articlestats"."hits" FROM "blog_articlestats" WHERE "blog_articlestats"."article_id" = 742 LIMIT 21SELECT ••• FROM "blog_articlestats" WHERE "blog_articlestats"."article_id" = 742 LIMIT 21
0.12
Connection: default
Transaction status: In transaction
/home/nathan/rb/site/./blog/views.py in blog_article_w_slug(230)
return blog_article(request, article_id)/home/nathan/rb/site/./blog/views.py in blog_article(208)
return cached_blog_article(request, article.id)/home/nathan/rb/site/./blog/views.py in cached_blog_article(206)
return render(request, 'blog/blog_article.html', context)/usr/lib/python3.10/contextlib.py in inner(79)
return func(*args, **kwds)/home/nathan/venv_rb310/lib/python3.10/site-packages/annoying/fields.py in __get__(36)
.__get__(instance, instance_type)
SELECTDISTINCT "taggit_tag"."id", "taggit_tag"."name", "taggit_tag"."slug", COUNT("blog_article"."id") AS "count" FROM "taggit_tag" INNER JOIN "taggit_taggeditem" ON ("taggit_tag"."id" = "taggit_taggeditem"."tag_id") INNER JOIN "django_content_type" ON ("taggit_taggeditem"."content_type_id" = "django_content_type"."id") LEFT OUTER JOIN "blog_article" ON ("taggit_taggeditem"."object_id" = "blog_article"."id" AND ("taggit_taggeditem"."content_type_id" = 12)) INNER JOIN "taggit_taggeditem" T5 ON ("taggit_tag"."id" = T5."tag_id") INNER JOIN "blog_article" T6 ON (T5."object_id" = T6."id" AND (T5."content_type_id" = 12)) WHERE ("django_content_type"."app_label" = 'blog' AND "django_content_type"."model" = 'article' AND T6."id" = 742) GROUP BY "taggit_tag"."id"SELECT ••• FROM "taggit_tag" INNER JOIN "taggit_taggeditem" ON ("taggit_tag"."id" = "taggit_taggeditem"."tag_id") INNER JOIN "django_content_type" ON ("taggit_taggeditem"."content_type_id" = "django_content_type"."id") LEFT OUTER JOIN "blog_article" ON ("taggit_taggeditem"."object_id" = "blog_article"."id" AND ("taggit_taggeditem"."content_type_id" = 12)) INNER JOIN "taggit_taggeditem" T5 ON ("taggit_tag"."id" = T5."tag_id") INNER JOIN "blog_article" T6 ON (T5."object_id" = T6."id" AND (T5."content_type_id" = 12)) WHERE ("django_content_type"."app_label" = 'blog' AND "django_content_type"."model" = 'article' AND T6."id" = 742) GROUP BY "taggit_tag"."id"
4.16
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_article_w_slug(230)
return blog_article(request, article_id)/home/nathan/rb/site/./blog/views.py in blog_article(208)
return cached_blog_article(request, article.id)/home/nathan/rb/site/./blog/views.py in cached_blog_article(206)
return render(request, 'blog/blog_article.html', context)
SELECT (width*height) AS "area", "ads_banner"."id", "ads_banner"."width", "ads_banner"."height", "ads_banner"."start_date", "ads_banner"."end_date", "ads_banner"."country_code", "ads_banner"."html" FROM "ads_banner" WHERE ("ads_banner"."start_date" < '2026-01-22T05:14:13.014874+00:00'::timestamptz AND ("ads_banner"."end_date" > '2026-01-22T05:14:13.014966+00:00'::timestamptz OR "ads_banner"."end_date" ISNULL) AND "ads_banner"."height" <= 350 AND "ads_banner"."start_date" < '2026-01-22T05:14:13.014856+00:00'::timestamptz AND "ads_banner"."width" <= 262 AND ("ads_banner"."end_date" ISNULLOR "ads_banner"."end_date" > '2026-01-22T05:14:13.015102+00:00'::timestamptz) AND "ads_banner"."country_code" = 'US')SELECT ••• FROM "ads_banner" WHERE ("ads_banner"."start_date" < '2026-01-22T05:14:13.014874+00:00'::timestamptz AND ("ads_banner"."end_date" > '2026-01-22T05:14:13.014966+00:00'::timestamptz OR "ads_banner"."end_date" ISNULL) AND "ads_banner"."height" <= 350 AND "ads_banner"."start_date" < '2026-01-22T05:14:13.014856+00:00'::timestamptz AND "ads_banner"."width" <= 262 AND ("ads_banner"."end_date" ISNULLOR "ads_banner"."end_date" > '2026-01-22T05:14:13.015102+00:00'::timestamptz) AND "ads_banner"."country_code" = 'US')
4 similar queries.
2.48
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_article_w_slug(230)
return blog_article(request, article_id)/home/nathan/rb/site/./blog/views.py in blog_article(208)
return cached_blog_article(request, article.id)/home/nathan/rb/site/./blog/views.py in cached_blog_article(206)
return render(request, 'blog/blog_article.html', context)/home/nathan/rb/site/./ads/templatetags/ads/drawing.py in render_banner(291)
if not banners:
247
<h4 class="hidden-xs">TAGS</h4>
248
{% include 'blog/includes/render_tags.html' %}
249
250
{% render_banner 262 350 2 %}
251
252
{% include 'blog/includes/render_posts_preview_tabs.html' %}
SELECT (width*height) AS "area", "ads_banner"."id", "ads_banner"."width", "ads_banner"."height", "ads_banner"."start_date", "ads_banner"."end_date", "ads_banner"."country_code", "ads_banner"."html" FROM "ads_banner" WHERE ("ads_banner"."start_date" < '2026-01-22T05:14:13.014874+00:00'::timestamptz AND ("ads_banner"."end_date" > '2026-01-22T05:14:13.014966+00:00'::timestamptz OR "ads_banner"."end_date" ISNULL) AND "ads_banner"."height" <= 350 AND "ads_banner"."start_date" < '2026-01-22T05:14:13.014856+00:00'::timestamptz AND "ads_banner"."width" <= 262 AND ("ads_banner"."end_date" ISNULLOR "ads_banner"."end_date" > '2026-01-22T05:14:13.015102+00:00'::timestamptz) AND "ads_banner"."country_code" = 'US') ORDER BY 1 DESC, RANDOM() ASC LIMIT 1SELECT ••• FROM "ads_banner" WHERE ("ads_banner"."start_date" < '2026-01-22T05:14:13.014874+00:00'::timestamptz AND ("ads_banner"."end_date" > '2026-01-22T05:14:13.014966+00:00'::timestamptz OR "ads_banner"."end_date" ISNULL) AND "ads_banner"."height" <= 350 AND "ads_banner"."start_date" < '2026-01-22T05:14:13.014856+00:00'::timestamptz AND "ads_banner"."width" <= 262 AND ("ads_banner"."end_date" ISNULLOR "ads_banner"."end_date" > '2026-01-22T05:14:13.015102+00:00'::timestamptz) AND "ads_banner"."country_code" = 'US') ORDER BY 1 DESC, RANDOM() ASCLIMIT 1
4 similar queries.
1.53
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_article_w_slug(230)
return blog_article(request, article_id)/home/nathan/rb/site/./blog/views.py in blog_article(208)
return cached_blog_article(request, article.id)/home/nathan/rb/site/./blog/views.py in cached_blog_article(206)
return render(request, 'blog/blog_article.html', context)/home/nathan/rb/site/./ads/templatetags/ads/drawing.py in render_banner(298)
banner = banners.order_by('-area', '?')[0]
247
<h4 class="hidden-xs">TAGS</h4>
248
{% include 'blog/includes/render_tags.html' %}
249
250
{% render_banner 262 350 2 %}
251
252
{% include 'blog/includes/render_posts_preview_tabs.html' %}
SELECT (width*height) AS "area", "ads_banner"."id", "ads_banner"."width", "ads_banner"."height", "ads_banner"."start_date", "ads_banner"."end_date", "ads_banner"."country_code", "ads_banner"."html" FROM "ads_banner" WHERE ("ads_banner"."start_date" < '2026-01-22T05:14:13.026790+00:00'::timestamptz AND ("ads_banner"."end_date" > '2026-01-22T05:14:13.026886+00:00'::timestamptz OR "ads_banner"."end_date" ISNULL) AND "ads_banner"."height" <= 600 AND "ads_banner"."start_date" < '2026-01-22T05:14:13.026776+00:00'::timestamptz AND "ads_banner"."width" <= 262 AND ("ads_banner"."end_date" ISNULLOR "ads_banner"."end_date" > '2026-01-22T05:14:13.027043+00:00'::timestamptz) AND "ads_banner"."country_code" = 'US')SELECT ••• FROM "ads_banner" WHERE ("ads_banner"."start_date" < '2026-01-22T05:14:13.026790+00:00'::timestamptz AND ("ads_banner"."end_date" > '2026-01-22T05:14:13.026886+00:00'::timestamptz OR "ads_banner"."end_date" ISNULL) AND "ads_banner"."height" <= 600 AND "ads_banner"."start_date" < '2026-01-22T05:14:13.026776+00:00'::timestamptz AND "ads_banner"."width" <= 262 AND ("ads_banner"."end_date" ISNULLOR "ads_banner"."end_date" > '2026-01-22T05:14:13.027043+00:00'::timestamptz) AND "ads_banner"."country_code" = 'US')
4 similar queries.
1.65
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_article_w_slug(230)
return blog_article(request, article_id)/home/nathan/rb/site/./blog/views.py in blog_article(208)
return cached_blog_article(request, article.id)/home/nathan/rb/site/./blog/views.py in cached_blog_article(206)
return render(request, 'blog/blog_article.html', context)/home/nathan/rb/site/./ads/templatetags/ads/drawing.py in render_banner(291)
if not banners:
29
{% include 'blog/includes/render_posts_preview.html' with article=related_article %}
30
</div>
31
{% endfor %}
32
{% render_banner 262 600 5 %}
33
</div>
34
{% endif %}
35
<div id="tab_series" class="tab-pane {% if not related_articles %}active{% endif %}">
SELECT (width*height) AS "area", "ads_banner"."id", "ads_banner"."width", "ads_banner"."height", "ads_banner"."start_date", "ads_banner"."end_date", "ads_banner"."country_code", "ads_banner"."html" FROM "ads_banner" WHERE ("ads_banner"."start_date" < '2026-01-22T05:14:13.026790+00:00'::timestamptz AND ("ads_banner"."end_date" > '2026-01-22T05:14:13.026886+00:00'::timestamptz OR "ads_banner"."end_date" ISNULL) AND "ads_banner"."height" <= 600 AND "ads_banner"."start_date" < '2026-01-22T05:14:13.026776+00:00'::timestamptz AND "ads_banner"."width" <= 262 AND ("ads_banner"."end_date" ISNULLOR "ads_banner"."end_date" > '2026-01-22T05:14:13.027043+00:00'::timestamptz) AND "ads_banner"."country_code" = 'US') ORDER BY 1 DESC, RANDOM() ASC LIMIT 1SELECT ••• FROM "ads_banner" WHERE ("ads_banner"."start_date" < '2026-01-22T05:14:13.026790+00:00'::timestamptz AND ("ads_banner"."end_date" > '2026-01-22T05:14:13.026886+00:00'::timestamptz OR "ads_banner"."end_date" ISNULL) AND "ads_banner"."height" <= 600 AND "ads_banner"."start_date" < '2026-01-22T05:14:13.026776+00:00'::timestamptz AND "ads_banner"."width" <= 262 AND ("ads_banner"."end_date" ISNULLOR "ads_banner"."end_date" > '2026-01-22T05:14:13.027043+00:00'::timestamptz) AND "ads_banner"."country_code" = 'US') ORDER BY 1 DESC, RANDOM() ASCLIMIT 1
4 similar queries.
1.55
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_article_w_slug(230)
return blog_article(request, article_id)/home/nathan/rb/site/./blog/views.py in blog_article(208)
return cached_blog_article(request, article.id)/home/nathan/rb/site/./blog/views.py in cached_blog_article(206)
return render(request, 'blog/blog_article.html', context)/home/nathan/rb/site/./ads/templatetags/ads/drawing.py in render_banner(298)
banner = banners.order_by('-area', '?')[0]
29
{% include 'blog/includes/render_posts_preview.html' with article=related_article %}
30
</div>
31
{% endfor %}
32
{% render_banner 262 600 5 %}
33
</div>
34
{% endif %}
35
<div id="tab_series" class="tab-pane {% if not related_articles %}active{% endif %}">
SELECT (width*height) AS "area", "ads_banner"."id", "ads_banner"."width", "ads_banner"."height", "ads_banner"."start_date", "ads_banner"."end_date", "ads_banner"."country_code", "ads_banner"."html" FROM "ads_banner" WHERE ("ads_banner"."start_date" < '2026-01-22T05:14:13.032620+00:00'::timestamptz AND ("ads_banner"."end_date" > '2026-01-22T05:14:13.032706+00:00'::timestamptz OR "ads_banner"."end_date" ISNULL) AND "ads_banner"."height" <= 600 AND "ads_banner"."start_date" < '2026-01-22T05:14:13.032606+00:00'::timestamptz AND "ads_banner"."width" <= 262 AND ("ads_banner"."end_date" ISNULLOR "ads_banner"."end_date" > '2026-01-22T05:14:13.032826+00:00'::timestamptz) AND "ads_banner"."country_code" = 'US')SELECT ••• FROM "ads_banner" WHERE ("ads_banner"."start_date" < '2026-01-22T05:14:13.032620+00:00'::timestamptz AND ("ads_banner"."end_date" > '2026-01-22T05:14:13.032706+00:00'::timestamptz OR "ads_banner"."end_date" ISNULL) AND "ads_banner"."height" <= 600 AND "ads_banner"."start_date" < '2026-01-22T05:14:13.032606+00:00'::timestamptz AND "ads_banner"."width" <= 262 AND ("ads_banner"."end_date" ISNULLOR "ads_banner"."end_date" > '2026-01-22T05:14:13.032826+00:00'::timestamptz) AND "ads_banner"."country_code" = 'US')
4 similar queries.
1.34
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_article_w_slug(230)
return blog_article(request, article_id)/home/nathan/rb/site/./blog/views.py in blog_article(208)
return cached_blog_article(request, article.id)/home/nathan/rb/site/./blog/views.py in cached_blog_article(206)
return render(request, 'blog/blog_article.html', context)/home/nathan/rb/site/./ads/templatetags/ads/drawing.py in render_banner(291)
if not banners:
SELECT (width*height) AS "area", "ads_banner"."id", "ads_banner"."width", "ads_banner"."height", "ads_banner"."start_date", "ads_banner"."end_date", "ads_banner"."country_code", "ads_banner"."html" FROM "ads_banner" WHERE ("ads_banner"."start_date" < '2026-01-22T05:14:13.032620+00:00'::timestamptz AND ("ads_banner"."end_date" > '2026-01-22T05:14:13.032706+00:00'::timestamptz OR "ads_banner"."end_date" ISNULL) AND "ads_banner"."height" <= 600 AND "ads_banner"."start_date" < '2026-01-22T05:14:13.032606+00:00'::timestamptz AND "ads_banner"."width" <= 262 AND ("ads_banner"."end_date" ISNULLOR "ads_banner"."end_date" > '2026-01-22T05:14:13.032826+00:00'::timestamptz) AND "ads_banner"."country_code" = 'US') ORDER BY 1 DESC, RANDOM() ASC LIMIT 1SELECT ••• FROM "ads_banner" WHERE ("ads_banner"."start_date" < '2026-01-22T05:14:13.032620+00:00'::timestamptz AND ("ads_banner"."end_date" > '2026-01-22T05:14:13.032706+00:00'::timestamptz OR "ads_banner"."end_date" ISNULL) AND "ads_banner"."height" <= 600 AND "ads_banner"."start_date" < '2026-01-22T05:14:13.032606+00:00'::timestamptz AND "ads_banner"."width" <= 262 AND ("ads_banner"."end_date" ISNULLOR "ads_banner"."end_date" > '2026-01-22T05:14:13.032826+00:00'::timestamptz) AND "ads_banner"."country_code" = 'US') ORDER BY 1 DESC, RANDOM() ASCLIMIT 1
4 similar queries.
1.24
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_article_w_slug(230)
return blog_article(request, article_id)/home/nathan/rb/site/./blog/views.py in blog_article(208)
return cached_blog_article(request, article.id)/home/nathan/rb/site/./blog/views.py in cached_blog_article(206)
return render(request, 'blog/blog_article.html', context)/home/nathan/rb/site/./ads/templatetags/ads/drawing.py in render_banner(298)
banner = banners.order_by('-area', '?')[0]
SELECT (width*height) AS "area", "ads_banner"."id", "ads_banner"."width", "ads_banner"."height", "ads_banner"."start_date", "ads_banner"."end_date", "ads_banner"."country_code", "ads_banner"."html" FROM "ads_banner" WHERE ("ads_banner"."start_date" < '2026-01-22T05:14:13.041660+00:00'::timestamptz AND ("ads_banner"."end_date" > '2026-01-22T05:14:13.041746+00:00'::timestamptz OR "ads_banner"."end_date" ISNULL) AND "ads_banner"."height" <= 600 AND "ads_banner"."start_date" < '2026-01-22T05:14:13.041646+00:00'::timestamptz AND "ads_banner"."width" <= 262 AND ("ads_banner"."end_date" ISNULLOR "ads_banner"."end_date" > '2026-01-22T05:14:13.041866+00:00'::timestamptz) AND "ads_banner"."country_code" = 'US')SELECT ••• FROM "ads_banner" WHERE ("ads_banner"."start_date" < '2026-01-22T05:14:13.041660+00:00'::timestamptz AND ("ads_banner"."end_date" > '2026-01-22T05:14:13.041746+00:00'::timestamptz OR "ads_banner"."end_date" ISNULL) AND "ads_banner"."height" <= 600 AND "ads_banner"."start_date" < '2026-01-22T05:14:13.041646+00:00'::timestamptz AND "ads_banner"."width" <= 262 AND ("ads_banner"."end_date" ISNULLOR "ads_banner"."end_date" > '2026-01-22T05:14:13.041866+00:00'::timestamptz) AND "ads_banner"."country_code" = 'US')
4 similar queries.
1.37
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_article_w_slug(230)
return blog_article(request, article_id)/home/nathan/rb/site/./blog/views.py in blog_article(208)
return cached_blog_article(request, article.id)/home/nathan/rb/site/./blog/views.py in cached_blog_article(206)
return render(request, 'blog/blog_article.html', context)/home/nathan/rb/site/./ads/templatetags/ads/drawing.py in render_banner(291)
if not banners:
63
{% include 'blog/includes/render_posts_preview.html' with article=popular_article %}
SELECT (width*height) AS "area", "ads_banner"."id", "ads_banner"."width", "ads_banner"."height", "ads_banner"."start_date", "ads_banner"."end_date", "ads_banner"."country_code", "ads_banner"."html" FROM "ads_banner" WHERE ("ads_banner"."start_date" < '2026-01-22T05:14:13.041660+00:00'::timestamptz AND ("ads_banner"."end_date" > '2026-01-22T05:14:13.041746+00:00'::timestamptz OR "ads_banner"."end_date" ISNULL) AND "ads_banner"."height" <= 600 AND "ads_banner"."start_date" < '2026-01-22T05:14:13.041646+00:00'::timestamptz AND "ads_banner"."width" <= 262 AND ("ads_banner"."end_date" ISNULLOR "ads_banner"."end_date" > '2026-01-22T05:14:13.041866+00:00'::timestamptz) AND "ads_banner"."country_code" = 'US') ORDER BY 1 DESC, RANDOM() ASC LIMIT 1SELECT ••• FROM "ads_banner" WHERE ("ads_banner"."start_date" < '2026-01-22T05:14:13.041660+00:00'::timestamptz AND ("ads_banner"."end_date" > '2026-01-22T05:14:13.041746+00:00'::timestamptz OR "ads_banner"."end_date" ISNULL) AND "ads_banner"."height" <= 600 AND "ads_banner"."start_date" < '2026-01-22T05:14:13.041646+00:00'::timestamptz AND "ads_banner"."width" <= 262 AND ("ads_banner"."end_date" ISNULLOR "ads_banner"."end_date" > '2026-01-22T05:14:13.041866+00:00'::timestamptz) AND "ads_banner"."country_code" = 'US') ORDER BY 1 DESC, RANDOM() ASCLIMIT 1
4 similar queries.
1.33
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_article_w_slug(230)
return blog_article(request, article_id)/home/nathan/rb/site/./blog/views.py in blog_article(208)
return cached_blog_article(request, article.id)/home/nathan/rb/site/./blog/views.py in cached_blog_article(206)
return render(request, 'blog/blog_article.html', context)/home/nathan/rb/site/./ads/templatetags/ads/drawing.py in render_banner(298)
banner = banners.order_by('-area', '?')[0]
63
{% include 'blog/includes/render_posts_preview.html' with article=popular_article %}
SELECT "django_content_type"."id", "django_content_type"."app_label", "django_content_type"."model" FROM "django_content_type" WHERE ("django_content_type"."app_label" = 'blog' AND "django_content_type"."model" = 'article') LIMIT 21SELECT ••• FROM "django_content_type" WHERE ("django_content_type"."app_label" = 'blog' AND "django_content_type"."model" = 'article') LIMIT 21
0.11
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_article_w_slug(230)
return blog_article(request, article_id)/home/nathan/rb/site/./blog/views.py in blog_article(208)
return cached_blog_article(request, article.id)/home/nathan/rb/site/./blog/views.py in cached_blog_article(206)
return render(request, 'blog/blog_article.html', context)/home/nathan/rb/site/./rb_comments/templatetags/rb_comments_filters.py in get_page_locked_status(78)
content_type = ContentType.objects.get(app_label=page_content_type.split('.')[0], model=page_content_type.split('.')[1])
4
{% load rb_comments_filters %}
5
6
<div id="comments-{{ page.id }}">
7
{% get_page_locked_status content_type page.id as is_page_locked %}
8
9
{% comment %}
10
Not using render_comment_list as it uses styles in ul/li that I can't seem to get working well with Smarty.
11
Using fluent-comments to hide unused fields and do ajax add/reply comment.
SELECT 1 AS "a" FROM "rb_comments_pagelocked" WHERE ("rb_comments_pagelocked"."content_type_id" = 12 AND "rb_comments_pagelocked"."object_id" = 742) LIMIT 1SELECT ••• FROM "rb_comments_pagelocked" WHERE ("rb_comments_pagelocked"."content_type_id" = 12 AND "rb_comments_pagelocked"."object_id" = 742) LIMIT 1
0.08
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_article_w_slug(230)
return blog_article(request, article_id)/home/nathan/rb/site/./blog/views.py in blog_article(208)
return cached_blog_article(request, article.id)/home/nathan/rb/site/./blog/views.py in cached_blog_article(206)
return render(request, 'blog/blog_article.html', context)/home/nathan/rb/site/./rb_comments/templatetags/rb_comments_filters.py in get_page_locked_status(79)
is_locked = PageLocked.objects.filter(content_type=content_type, object_id=page_id).exists()
4
{% load rb_comments_filters %}
5
6
<div id="comments-{{ page.id }}">
7
{% get_page_locked_status content_type page.id as is_page_locked %}
8
9
{% comment %}
10
Not using render_comment_list as it uses styles in ul/li that I can't seem to get working well with Smarty.
11
Using fluent-comments to hide unused fields and do ajax add/reply comment.
SELECT ("auth_user_groups"."user_id") AS "_prefetch_related_val_user_id", "auth_group"."id", "auth_group"."name" FROM "auth_group" INNER JOIN "auth_user_groups" ON ("auth_group"."id" = "auth_user_groups"."group_id") WHERE "auth_user_groups"."user_id" IN (581275, 325701, 529523)SELECT ••• FROM "auth_group" INNER JOIN "auth_user_groups" ON ("auth_group"."id" = "auth_user_groups"."group_id") WHERE "auth_user_groups"."user_id" IN (581275, 325701, 529523)
2 similar queries.
Duplicated 2 times.
0.15
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_article_w_slug(230)
return blog_article(request, article_id)/home/nathan/rb/site/./blog/views.py in blog_article(208)
return cached_blog_article(request, article.id)/home/nathan/rb/site/./blog/views.py in cached_blog_article(206)
return render(request, 'blog/blog_article.html', context)/home/nathan/venv_rb310/lib/python3.10/site-packages/django_comments/templatetags/comments.py in render(71)
qs = self.get_queryset(context)/home/nathan/rb/site/./rb_comments/templatetags/rb_comments_filters.py in get_queryset(45)
return qs[:50], len(qs)
14
{% endcomment %}
15
{% if not comment_list %}
16
{# Get comments for a page #}
17
{% get_rb_comment_list for page as comment_list %}
SELECT COUNT(*) AS "__count" FROM "threadedcomments_comment" INNER JOIN "django_comments" ON ("threadedcomments_comment"."comment_ptr_id" = "django_comments"."id") WHERE ("django_comments"."content_type_id" = 12 AND "django_comments"."object_pk" = '742' AND "django_comments"."site_id" = 1 AND "django_comments"."is_public" ANDNOT "django_comments"."is_removed")SELECT ••• FROM "threadedcomments_comment" INNER JOIN "django_comments" ON ("threadedcomments_comment"."comment_ptr_id" = "django_comments"."id") WHERE ("django_comments"."content_type_id" = 12 AND "django_comments"."object_pk" = '742' AND "django_comments"."site_id" = 1 AND "django_comments"."is_public" ANDNOT "django_comments"."is_removed")
2 similar queries.
Duplicated 2 times.
0.24
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_article_w_slug(230)
return blog_article(request, article_id)/home/nathan/rb/site/./blog/views.py in blog_article(208)
return cached_blog_article(request, article.id)/home/nathan/rb/site/./blog/views.py in cached_blog_article(206)
return render(request, 'blog/blog_article.html', context)/home/nathan/venv_rb310/lib/python3.10/site-packages/django_comments/templatetags/comments.py in render(72)
context[self.as_varname] = self.get_context_value_from_queryset(context, qs)/home/nathan/venv_rb310/lib/python3.10/site-packages/threadedcomments/templatetags/threadedcomments_tags.py in get_context_value_from_queryset(116)
return qs.count()
15
{% if not comment_list %}
16
{# Get comments for a page #}
17
{% get_rb_comment_list for page as comment_list %}
SELECT ("auth_user_groups"."user_id") AS "_prefetch_related_val_user_id", "auth_group"."id", "auth_group"."name" FROM "auth_group" INNER JOIN "auth_user_groups" ON ("auth_group"."id" = "auth_user_groups"."group_id") WHERE "auth_user_groups"."user_id" IN (581275, 325701, 529523)SELECT ••• FROM "auth_group" INNER JOIN "auth_user_groups" ON ("auth_group"."id" = "auth_user_groups"."group_id") WHERE "auth_user_groups"."user_id" IN (581275, 325701, 529523)
2 similar queries.
Duplicated 2 times.
0.12
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_article_w_slug(230)
return blog_article(request, article_id)/home/nathan/rb/site/./blog/views.py in blog_article(208)
return cached_blog_article(request, article.id)/home/nathan/rb/site/./blog/views.py in cached_blog_article(206)
return render(request, 'blog/blog_article.html', context)
89
{% with cache_timeout=user.is_authenticated|yesno:"0,300" %}
SELECT "avatar_avatar"."id", "avatar_avatar"."user_id", "avatar_avatar"."primary", "avatar_avatar"."avatar", "avatar_avatar"."date_uploaded" FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 581275 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 581275 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESCLIMIT 1
4 similar queries.
0.11
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_article_w_slug(230)
return blog_article(request, article_id)/home/nathan/rb/site/./blog/views.py in blog_article(208)
return cached_blog_article(request, article.id)/home/nathan/rb/site/./blog/views.py in cached_blog_article(206)
return render(request, 'blog/blog_article.html', context)/home/nathan/rb/site/./avatar/templatetags/avatar_tags.py in avatar_url(33)
avatar_url = provider.get_avatar_url(user, size)/home/nathan/rb/site/./avatar/providers.py in get_avatar_url(48)
avatar = get_primary_avatar(user, size)/home/nathan/rb/site/./avatar/utils.py in get_primary_avatar(120)
avatar = user.avatar_set.order_by("-primary", "-date_uploaded")[0]
SELECT "auth_user"."id", "auth_user"."password", "auth_user"."last_login", "auth_user"."is_superuser", "auth_user"."username", "auth_user"."first_name", "auth_user"."last_name", "auth_user"."email", "auth_user"."is_staff", "auth_user"."is_active", "auth_user"."date_joined", "lego_designer"."user_ptr_id", "lego_designer"."auto_approve", "lego_designer"."num_auto_approved", "lego_designer"."last_checked_for_moc_errors" FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 581275 LIMIT 21SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 581275 LIMIT 21
3 similar queries.
0.14
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_article_w_slug(230)
return blog_article(request, article_id)/home/nathan/rb/site/./blog/views.py in blog_article(208)
return cached_blog_article(request, article.id)/home/nathan/rb/site/./blog/views.py in cached_blog_article(206)
return render(request, 'blog/blog_article.html', context)/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():
57
{% elif page.is_moc and page.designer_id == comment.user_id %}
58
<span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
SELECT "avatar_avatar"."id", "avatar_avatar"."user_id", "avatar_avatar"."primary", "avatar_avatar"."avatar", "avatar_avatar"."date_uploaded" FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 325701 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 325701 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESCLIMIT 1
4 similar queries.
0.12
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_article_w_slug(230)
return blog_article(request, article_id)/home/nathan/rb/site/./blog/views.py in blog_article(208)
return cached_blog_article(request, article.id)/home/nathan/rb/site/./blog/views.py in cached_blog_article(206)
return render(request, 'blog/blog_article.html', context)/home/nathan/rb/site/./avatar/templatetags/avatar_tags.py in avatar_url(33)
avatar_url = provider.get_avatar_url(user, size)/home/nathan/rb/site/./avatar/providers.py in get_avatar_url(48)
avatar = get_primary_avatar(user, size)/home/nathan/rb/site/./avatar/utils.py in get_primary_avatar(120)
avatar = user.avatar_set.order_by("-primary", "-date_uploaded")[0]
SELECT "auth_user"."id", "auth_user"."password", "auth_user"."last_login", "auth_user"."is_superuser", "auth_user"."username", "auth_user"."first_name", "auth_user"."last_name", "auth_user"."email", "auth_user"."is_staff", "auth_user"."is_active", "auth_user"."date_joined", "lego_designer"."user_ptr_id", "lego_designer"."auto_approve", "lego_designer"."num_auto_approved", "lego_designer"."last_checked_for_moc_errors" FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 325701 LIMIT 21SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 325701 LIMIT 21
3 similar queries.
0.12
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_article_w_slug(230)
return blog_article(request, article_id)/home/nathan/rb/site/./blog/views.py in blog_article(208)
return cached_blog_article(request, article.id)/home/nathan/rb/site/./blog/views.py in cached_blog_article(206)
return render(request, 'blog/blog_article.html', context)/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():
57
{% elif page.is_moc and page.designer_id == comment.user_id %}
58
<span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
SELECT 1 AS "a" FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 325701) LIMIT 1SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 325701) LIMIT 1
4 similar queries.
Duplicated 2 times.
0.19
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_article_w_slug(230)
return blog_article(request, article_id)/home/nathan/rb/site/./blog/views.py in blog_article(208)
return cached_blog_article(request, article.id)/home/nathan/rb/site/./blog/views.py in cached_blog_article(206)
return render(request, 'blog/blog_article.html', context)/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():
57
{% elif page.is_moc and page.designer_id == comment.user_id %}
58
<span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
SELECT 1 AS "a" FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 325701) LIMIT 1SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 325701) LIMIT 1
4 similar queries.
Duplicated 2 times.
0.14
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_article_w_slug(230)
return blog_article(request, article_id)/home/nathan/rb/site/./blog/views.py in blog_article(208)
return cached_blog_article(request, article.id)/home/nathan/rb/site/./blog/views.py in cached_blog_article(206)
return render(request, 'blog/blog_article.html', context)/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():
57
{% elif page.is_moc and page.designer_id == comment.user_id %}
58
<span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
SELECT "avatar_avatar"."id", "avatar_avatar"."user_id", "avatar_avatar"."primary", "avatar_avatar"."avatar", "avatar_avatar"."date_uploaded" FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 529523 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 529523 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESCLIMIT 1
4 similar queries.
0.10
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_article_w_slug(230)
return blog_article(request, article_id)/home/nathan/rb/site/./blog/views.py in blog_article(208)
return cached_blog_article(request, article.id)/home/nathan/rb/site/./blog/views.py in cached_blog_article(206)
return render(request, 'blog/blog_article.html', context)/home/nathan/rb/site/./avatar/templatetags/avatar_tags.py in avatar_url(33)
avatar_url = provider.get_avatar_url(user, size)/home/nathan/rb/site/./avatar/providers.py in get_avatar_url(48)
avatar = get_primary_avatar(user, size)/home/nathan/rb/site/./avatar/utils.py in get_primary_avatar(120)
avatar = user.avatar_set.order_by("-primary", "-date_uploaded")[0]
SELECT "auth_user"."id", "auth_user"."password", "auth_user"."last_login", "auth_user"."is_superuser", "auth_user"."username", "auth_user"."first_name", "auth_user"."last_name", "auth_user"."email", "auth_user"."is_staff", "auth_user"."is_active", "auth_user"."date_joined", "lego_designer"."user_ptr_id", "lego_designer"."auto_approve", "lego_designer"."num_auto_approved", "lego_designer"."last_checked_for_moc_errors" FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 529523 LIMIT 21SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 529523 LIMIT 21
3 similar queries.
0.12
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_article_w_slug(230)
return blog_article(request, article_id)/home/nathan/rb/site/./blog/views.py in blog_article(208)
return cached_blog_article(request, article.id)/home/nathan/rb/site/./blog/views.py in cached_blog_article(206)
return render(request, 'blog/blog_article.html', context)/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():
57
{% elif page.is_moc and page.designer_id == comment.user_id %}
58
<span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
SELECT 1 AS "a" FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 529523) LIMIT 1SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 529523) LIMIT 1
4 similar queries.
Duplicated 2 times.
0.15
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_article_w_slug(230)
return blog_article(request, article_id)/home/nathan/rb/site/./blog/views.py in blog_article(208)
return cached_blog_article(request, article.id)/home/nathan/rb/site/./blog/views.py in cached_blog_article(206)
return render(request, 'blog/blog_article.html', context)/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():
57
{% elif page.is_moc and page.designer_id == comment.user_id %}
58
<span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
SELECT 1 AS "a" FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 529523) LIMIT 1SELECT ••• FROM "lego_moc" INNER JOIN "lego_baseset" ON ("lego_moc"."baseset_ptr_id" = "lego_baseset"."id") WHERE ("lego_baseset"."is_active" AND "lego_moc"."designer_id" = 529523) LIMIT 1
4 similar queries.
Duplicated 2 times.
0.13
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_article_w_slug(230)
return blog_article(request, article_id)/home/nathan/rb/site/./blog/views.py in blog_article(208)
return cached_blog_article(request, article.id)/home/nathan/rb/site/./blog/views.py in cached_blog_article(206)
return render(request, 'blog/blog_article.html', context)/home/nathan/rb/site/./accounts/models/user_extras.py in get_rolename(618)
elif hasattr(self, 'designer') and Moc.objects.filter(designer=self.designer).exists():
57
{% elif page.is_moc and page.designer_id == comment.user_id %}
58
<span class="label label-dark-blue" title="This user designed this MOC">Designed this MOC</span>
SELECT "accounts_usersetting"."id", "accounts_usersetting"."user_id", "accounts_usersetting"."name", "accounts_usersetting"."value" FROM "accounts_usersetting" WHERE ("accounts_usersetting"."name" = 'privacy' AND "accounts_usersetting"."user_id" = 529523) LIMIT 21SELECT ••• FROM "accounts_usersetting" WHERE ("accounts_usersetting"."name" = 'privacy' AND "accounts_usersetting"."user_id" = 529523) LIMIT 21
0.10
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_article_w_slug(230)
return blog_article(request, article_id)/home/nathan/rb/site/./blog/views.py in blog_article(208)
return cached_blog_article(request, article.id)/home/nathan/rb/site/./blog/views.py in cached_blog_article(206)
return render(request, 'blog/blog_article.html', context)/home/nathan/rb/site/./accounts/models/user_extras.py in is_public_plan(654)
return self.get_privacy_option('is_public_plan')/home/nathan/rb/site/./accounts/models/user_extras.py in get_privacy_option(269)
options = self.get_privacy_options()/home/nathan/rb/site/./accounts/models/user_extras.py in get_privacy_options(263)
options = UserSetting.objects.get(user=self, name=UserSetting.USER_SETTING_PRIVACY_OPTIONS)
3 COMMENTS