I have previously had a lot of fun when I reviewed two MOCs, the original Gameboy by click_lever and a Gameboy Color by NickBrick. But now that there is an official set for the original Game Boy, I had to check that out as well. LEGO is no stranger to creating video game consoles, they started with the NES, and later did the Atari and the PAC-MAN Arcade.
The latest Super Hero Modular is DC's first. Arkham isn't the first building that comes to mind when considering iconic DC buildings but other than the Hall of Justice it's probably the one that gives LEGO a good excuse to include a dumb amount of Minifigures. Let's take a closer look at 76300 and see how it compares to it's Marvel siblings. Don't look too close though, you don't want to get co
Christmas Trees come in all shapes and sizes. I tried searching for all different species found around the world, but quickly found myself going down a rabbit hole with an overwhelming list of different types of trees used around the holidays, so I returned to my comfort zone of LEGO. Although there are over 50 sets tagged 'Christmas', most only contain a tree somewhere in the model.
For the last in the series of Advent Calendars reviews, we take a look at the two in-house themes: 60475-1 City Advent Calendar 2025 and 42668-1 Friends Advent Calendar 2025. Both themes have been releasing calendars for a while now: Friends has the counter on 14, while City can drink the spiked eggnog turning 21. After opening so many doors, can there still be surprises hidden behind them?
In November, the sequel to the 2024 Wicked movie, Wicked: For Good will be released. And like with the first movie, LEGO is releasing a series of sets to mark the occasion. Most of them are of the same type as last year's set: play sets featuring mini-dolls, but there are also two sets using minifigs instead that are aimed at display, and I'll be building one of those today.
In the 6 years I've been writing reviews, I've never built a Jurassic World set, despite the theme being around since 2015. Not that I don't like dinos, and the movies are a nice enough distraction to watch (but can't hold a candle to the original).
After unboxing the 75419-1 Death Star and examining the figures found inside in Part 1, we can finally start the construction! The build of this masssive model is split over 6 instruction manuals, and the first pages of each booklets highlights the section the booklet covers.
With nearly 300 reviews (this one is #298) written for Rebrickable and over 100 blogs on NewElementary, I think I can say I’ve built my fair share of sets. Some small, some big, and some massive, including 31203-1 World Map (11,695 parts), 10307-1 Eiffel Tower (10,001 parts) and 10276-1 Colosseum (9,036 parts).
As I mentioned in the review for 71050 Across the Spider-Verse CMF, Spider-Man has been presented in many shapes and forms across various media, including the Marvel Cinematic Universe (MCU). In this franchise, Peter Parker is taken under the wings of Tony Stark, providing him with an Iron Spider suit to advance his abilities.
default
53.44 ms (76 queries
including 72 similar
and 34 duplicates
)
Query
Timeline
Time (ms)
Action
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.32
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_by_tag(235)
return render_articles_list(request, articles, 10, tag)/home/nathan/rb/site/./blog/views.py in render_articles_list(69)
articles = paginator.get_page(request.GET.get('page', 1))/home/nathan/rb/site/./digg_paginator/utils.py in get_page(274)
return self.page(page)/home/nathan/rb/site/./digg_paginator/utils.py in page(199)
page = super(DiggPaginator, self).page(number, *args, **kwargs)/home/nathan/rb/site/./digg_paginator/utils.py in page(47)
return super(ExPaginator, self).page(number)/home/nathan/venv_rb310/lib/python3.10/site-packages/taggit/managers.py in _get_extra_restriction(730)
content_type_ids = [/home/nathan/venv_rb310/lib/python3.10/site-packages/taggit/managers.py in <listcomp>(731)
ContentType.objects.get_for_model(subclass).pk
SELECT COUNT(*) AS "__count" FROM "blog_article" INNER JOIN "taggit_taggeditem" ON ("blog_article"."id" = "taggit_taggeditem"."object_id" AND ("taggit_taggeditem"."content_type_id" = 12)) INNER JOIN "taggit_tag" ON ("taggit_taggeditem"."tag_id" = "taggit_tag"."id") WHERE ("blog_article"."is_active" AND UPPER("taggit_tag"."slug"::text) = UPPER('review'))SELECT ••• FROM "blog_article" INNER JOIN "taggit_taggeditem" ON ("blog_article"."id" = "taggit_taggeditem"."object_id" AND ("taggit_taggeditem"."content_type_id" = 12)) INNER JOIN "taggit_tag" ON ("taggit_taggeditem"."tag_id" = "taggit_tag"."id") WHERE ("blog_article"."is_active" AND UPPER("taggit_tag"."slug"::text) = UPPER('review'))
7.05
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_by_tag(235)
return render_articles_list(request, articles, 10, tag)/home/nathan/rb/site/./blog/views.py in render_articles_list(69)
articles = paginator.get_page(request.GET.get('page', 1))/home/nathan/rb/site/./digg_paginator/utils.py in get_page(274)
return self.page(page)/home/nathan/rb/site/./digg_paginator/utils.py in page(199)
page = super(DiggPaginator, self).page(number, *args, **kwargs)/home/nathan/rb/site/./digg_paginator/utils.py in page(47)
return super(ExPaginator, self).page(number)
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
8 similar queries.
0.41
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_by_tag(235)
return render_articles_list(request, articles, 10, tag)/home/nathan/rb/site/./blog/views.py in render_articles_list(72)
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
8 similar queries.
0.30
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_by_tag(235)
return render_articles_list(request, articles, 10, tag)/home/nathan/rb/site/./blog/views.py in render_articles_list(72)
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
8 similar queries.
0.43
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_by_tag(235)
return render_articles_list(request, articles, 10, tag)/home/nathan/rb/site/./blog/views.py in render_articles_list(72)
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
8 similar queries.
0.29
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_by_tag(235)
return render_articles_list(request, articles, 10, tag)/home/nathan/rb/site/./blog/views.py in render_articles_list(72)
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
8 similar queries.
0.45
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_by_tag(235)
return render_articles_list(request, articles, 10, tag)/home/nathan/rb/site/./blog/views.py in render_articles_list(72)
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
8 similar queries.
0.43
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_by_tag(235)
return render_articles_list(request, articles, 10, tag)/home/nathan/rb/site/./blog/views.py in render_articles_list(72)
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
8 similar queries.
0.32
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_by_tag(235)
return render_articles_list(request, articles, 10, tag)/home/nathan/rb/site/./blog/views.py in render_articles_list(72)
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
8 similar queries.
0.18
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_by_tag(235)
return render_articles_list(request, articles, 10, tag)/home/nathan/rb/site/./blog/views.py in render_articles_list(72)
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 "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.20
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_by_tag(235)
return render_articles_list(request, articles, 10, tag)/home/nathan/rb/site/./blog/views.py in render_articles_list(73)
return render(request, 'blog/blog_list.html', {'articles': articles, 'drafts': drafts, 'tag': tag,/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 "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" = 159879 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 159879 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESCLIMIT 1
10 similar queries.
0.15
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_by_tag(235)
return render_articles_list(request, articles, 10, tag)/home/nathan/rb/site/./blog/views.py in render_articles_list(73)
return render(request, 'blog/blog_list.html', {'articles': articles, 'drafts': drafts, 'tag': tag,/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 "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
10 similar queries.
Duplicated 10 times.
0.20
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_by_tag(235)
return render_articles_list(request, articles, 10, tag)/home/nathan/rb/site/./blog/views.py in render_articles_list(73)
return render(request, 'blog/blog_list.html', {'articles': articles, 'drafts': drafts, 'tag': tag,
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" = '884' 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" = '884' AND "django_comments"."site_id" = 1 AND "django_comments"."is_public" ANDNOT "django_comments"."is_removed")
10 similar queries.
1.53
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_by_tag(235)
return render_articles_list(request, articles, 10, tag)/home/nathan/rb/site/./blog/views.py in render_articles_list(73)
return render(request, 'blog/blog_list.html', {'articles': articles, 'drafts': drafts, 'tag': tag,/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" = 884 LIMIT 21SELECT ••• FROM "blog_articlestats" WHERE "blog_articlestats"."article_id" = 884 LIMIT 21
10 similar queries.
0.21
Connection: default
Transaction status: In transaction
/home/nathan/rb/site/./blog/views.py in blog_by_tag(235)
return render_articles_list(request, articles, 10, tag)/home/nathan/rb/site/./blog/views.py in render_articles_list(73)
return render(request, 'blog/blog_list.html', {'articles': articles, 'drafts': drafts, 'tag': tag,/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)
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" = 83025 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 83025 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESCLIMIT 1
10 similar queries.
0.09
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_by_tag(235)
return render_articles_list(request, articles, 10, tag)/home/nathan/rb/site/./blog/views.py in render_articles_list(73)
return render(request, 'blog/blog_list.html', {'articles': articles, 'drafts': drafts, 'tag': tag,/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 "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
10 similar queries.
Duplicated 10 times.
0.07
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_by_tag(235)
return render_articles_list(request, articles, 10, tag)/home/nathan/rb/site/./blog/views.py in render_articles_list(73)
return render(request, 'blog/blog_list.html', {'articles': articles, 'drafts': drafts, 'tag': tag,
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" = '880' 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" = '880' AND "django_comments"."site_id" = 1 AND "django_comments"."is_public" ANDNOT "django_comments"."is_removed")
10 similar queries.
1.86
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_by_tag(235)
return render_articles_list(request, articles, 10, tag)/home/nathan/rb/site/./blog/views.py in render_articles_list(73)
return render(request, 'blog/blog_list.html', {'articles': articles, 'drafts': drafts, 'tag': tag,/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" = 880 LIMIT 21SELECT ••• FROM "blog_articlestats" WHERE "blog_articlestats"."article_id" = 880 LIMIT 21
10 similar queries.
0.15
Connection: default
Transaction status: In transaction
/home/nathan/rb/site/./blog/views.py in blog_by_tag(235)
return render_articles_list(request, articles, 10, tag)/home/nathan/rb/site/./blog/views.py in render_articles_list(73)
return render(request, 'blog/blog_list.html', {'articles': articles, 'drafts': drafts, 'tag': tag,/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)
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
10 similar queries.
Duplicated 8 times.
0.19
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_by_tag(235)
return render_articles_list(request, articles, 10, tag)/home/nathan/rb/site/./blog/views.py in render_articles_list(73)
return render(request, 'blog/blog_list.html', {'articles': articles, 'drafts': drafts, 'tag': tag,/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 "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
10 similar queries.
Duplicated 10 times.
0.10
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_by_tag(235)
return render_articles_list(request, articles, 10, tag)/home/nathan/rb/site/./blog/views.py in render_articles_list(73)
return render(request, 'blog/blog_list.html', {'articles': articles, 'drafts': drafts, 'tag': tag,
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" = '885' 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" = '885' AND "django_comments"."site_id" = 1 AND "django_comments"."is_public" ANDNOT "django_comments"."is_removed")
10 similar queries.
1.17
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_by_tag(235)
return render_articles_list(request, articles, 10, tag)/home/nathan/rb/site/./blog/views.py in render_articles_list(73)
return render(request, 'blog/blog_list.html', {'articles': articles, 'drafts': drafts, 'tag': tag,/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" = 885 LIMIT 21SELECT ••• FROM "blog_articlestats" WHERE "blog_articlestats"."article_id" = 885 LIMIT 21
10 similar queries.
0.11
Connection: default
Transaction status: In transaction
/home/nathan/rb/site/./blog/views.py in blog_by_tag(235)
return render_articles_list(request, articles, 10, tag)/home/nathan/rb/site/./blog/views.py in render_articles_list(73)
return render(request, 'blog/blog_list.html', {'articles': articles, 'drafts': drafts, 'tag': tag,/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)
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
10 similar queries.
Duplicated 8 times.
0.11
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_by_tag(235)
return render_articles_list(request, articles, 10, tag)/home/nathan/rb/site/./blog/views.py in render_articles_list(73)
return render(request, 'blog/blog_list.html', {'articles': articles, 'drafts': drafts, 'tag': tag,/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 "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
10 similar queries.
Duplicated 10 times.
0.09
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_by_tag(235)
return render_articles_list(request, articles, 10, tag)/home/nathan/rb/site/./blog/views.py in render_articles_list(73)
return render(request, 'blog/blog_list.html', {'articles': articles, 'drafts': drafts, 'tag': tag,
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" = '874' 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" = '874' AND "django_comments"."site_id" = 1 AND "django_comments"."is_public" ANDNOT "django_comments"."is_removed")
10 similar queries.
0.37
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_by_tag(235)
return render_articles_list(request, articles, 10, tag)/home/nathan/rb/site/./blog/views.py in render_articles_list(73)
return render(request, 'blog/blog_list.html', {'articles': articles, 'drafts': drafts, 'tag': tag,/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" = 874 LIMIT 21SELECT ••• FROM "blog_articlestats" WHERE "blog_articlestats"."article_id" = 874 LIMIT 21
10 similar queries.
0.11
Connection: default
Transaction status: In transaction
/home/nathan/rb/site/./blog/views.py in blog_by_tag(235)
return render_articles_list(request, articles, 10, tag)/home/nathan/rb/site/./blog/views.py in render_articles_list(73)
return render(request, 'blog/blog_list.html', {'articles': articles, 'drafts': drafts, 'tag': tag,/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)
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
10 similar queries.
Duplicated 8 times.
0.08
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_by_tag(235)
return render_articles_list(request, articles, 10, tag)/home/nathan/rb/site/./blog/views.py in render_articles_list(73)
return render(request, 'blog/blog_list.html', {'articles': articles, 'drafts': drafts, 'tag': tag,/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 "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
10 similar queries.
Duplicated 10 times.
0.06
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_by_tag(235)
return render_articles_list(request, articles, 10, tag)/home/nathan/rb/site/./blog/views.py in render_articles_list(73)
return render(request, 'blog/blog_list.html', {'articles': articles, 'drafts': drafts, 'tag': tag,
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" = '877' 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" = '877' AND "django_comments"."site_id" = 1 AND "django_comments"."is_public" ANDNOT "django_comments"."is_removed")
10 similar queries.
0.67
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_by_tag(235)
return render_articles_list(request, articles, 10, tag)/home/nathan/rb/site/./blog/views.py in render_articles_list(73)
return render(request, 'blog/blog_list.html', {'articles': articles, 'drafts': drafts, 'tag': tag,/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" = 877 LIMIT 21SELECT ••• FROM "blog_articlestats" WHERE "blog_articlestats"."article_id" = 877 LIMIT 21
10 similar queries.
0.11
Connection: default
Transaction status: In transaction
/home/nathan/rb/site/./blog/views.py in blog_by_tag(235)
return render_articles_list(request, articles, 10, tag)/home/nathan/rb/site/./blog/views.py in render_articles_list(73)
return render(request, 'blog/blog_list.html', {'articles': articles, 'drafts': drafts, 'tag': tag,/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)
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
10 similar queries.
Duplicated 8 times.
0.13
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_by_tag(235)
return render_articles_list(request, articles, 10, tag)/home/nathan/rb/site/./blog/views.py in render_articles_list(73)
return render(request, 'blog/blog_list.html', {'articles': articles, 'drafts': drafts, 'tag': tag,/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 "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
10 similar queries.
Duplicated 10 times.
0.25
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_by_tag(235)
return render_articles_list(request, articles, 10, tag)/home/nathan/rb/site/./blog/views.py in render_articles_list(73)
return render(request, 'blog/blog_list.html', {'articles': articles, 'drafts': drafts, 'tag': tag,
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" = '876' 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" = '876' AND "django_comments"."site_id" = 1 AND "django_comments"."is_public" ANDNOT "django_comments"."is_removed")
10 similar queries.
1.16
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_by_tag(235)
return render_articles_list(request, articles, 10, tag)/home/nathan/rb/site/./blog/views.py in render_articles_list(73)
return render(request, 'blog/blog_list.html', {'articles': articles, 'drafts': drafts, 'tag': tag,/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" = 876 LIMIT 21SELECT ••• FROM "blog_articlestats" WHERE "blog_articlestats"."article_id" = 876 LIMIT 21
10 similar queries.
0.10
Connection: default
Transaction status: In transaction
/home/nathan/rb/site/./blog/views.py in blog_by_tag(235)
return render_articles_list(request, articles, 10, tag)/home/nathan/rb/site/./blog/views.py in render_articles_list(73)
return render(request, 'blog/blog_list.html', {'articles': articles, 'drafts': drafts, 'tag': tag,/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)
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
10 similar queries.
Duplicated 8 times.
0.11
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_by_tag(235)
return render_articles_list(request, articles, 10, tag)/home/nathan/rb/site/./blog/views.py in render_articles_list(73)
return render(request, 'blog/blog_list.html', {'articles': articles, 'drafts': drafts, 'tag': tag,/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 "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
10 similar queries.
Duplicated 10 times.
0.08
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_by_tag(235)
return render_articles_list(request, articles, 10, tag)/home/nathan/rb/site/./blog/views.py in render_articles_list(73)
return render(request, 'blog/blog_list.html', {'articles': articles, 'drafts': drafts, 'tag': tag,
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" = '887' 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" = '887' AND "django_comments"."site_id" = 1 AND "django_comments"."is_public" ANDNOT "django_comments"."is_removed")
10 similar queries.
1.02
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_by_tag(235)
return render_articles_list(request, articles, 10, tag)/home/nathan/rb/site/./blog/views.py in render_articles_list(73)
return render(request, 'blog/blog_list.html', {'articles': articles, 'drafts': drafts, 'tag': tag,/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" = 887 LIMIT 21SELECT ••• FROM "blog_articlestats" WHERE "blog_articlestats"."article_id" = 887 LIMIT 21
10 similar queries.
0.09
Connection: default
Transaction status: In transaction
/home/nathan/rb/site/./blog/views.py in blog_by_tag(235)
return render_articles_list(request, articles, 10, tag)/home/nathan/rb/site/./blog/views.py in render_articles_list(73)
return render(request, 'blog/blog_list.html', {'articles': articles, 'drafts': drafts, 'tag': tag,/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)
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
10 similar queries.
Duplicated 8 times.
0.10
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_by_tag(235)
return render_articles_list(request, articles, 10, tag)/home/nathan/rb/site/./blog/views.py in render_articles_list(73)
return render(request, 'blog/blog_list.html', {'articles': articles, 'drafts': drafts, 'tag': tag,/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 "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
10 similar queries.
Duplicated 10 times.
0.08
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_by_tag(235)
return render_articles_list(request, articles, 10, tag)/home/nathan/rb/site/./blog/views.py in render_articles_list(73)
return render(request, 'blog/blog_list.html', {'articles': articles, 'drafts': drafts, 'tag': tag,
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" = '883' 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" = '883' AND "django_comments"."site_id" = 1 AND "django_comments"."is_public" ANDNOT "django_comments"."is_removed")
10 similar queries.
1.97
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_by_tag(235)
return render_articles_list(request, articles, 10, tag)/home/nathan/rb/site/./blog/views.py in render_articles_list(73)
return render(request, 'blog/blog_list.html', {'articles': articles, 'drafts': drafts, 'tag': tag,/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" = 883 LIMIT 21SELECT ••• FROM "blog_articlestats" WHERE "blog_articlestats"."article_id" = 883 LIMIT 21
10 similar queries.
0.11
Connection: default
Transaction status: In transaction
/home/nathan/rb/site/./blog/views.py in blog_by_tag(235)
return render_articles_list(request, articles, 10, tag)/home/nathan/rb/site/./blog/views.py in render_articles_list(73)
return render(request, 'blog/blog_list.html', {'articles': articles, 'drafts': drafts, 'tag': tag,/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)
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
10 similar queries.
Duplicated 8 times.
0.20
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_by_tag(235)
return render_articles_list(request, articles, 10, tag)/home/nathan/rb/site/./blog/views.py in render_articles_list(73)
return render(request, 'blog/blog_list.html', {'articles': articles, 'drafts': drafts, 'tag': tag,/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 "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
10 similar queries.
Duplicated 10 times.
0.21
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_by_tag(235)
return render_articles_list(request, articles, 10, tag)/home/nathan/rb/site/./blog/views.py in render_articles_list(73)
return render(request, 'blog/blog_list.html', {'articles': articles, 'drafts': drafts, 'tag': tag,
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" = '875' 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" = '875' AND "django_comments"."site_id" = 1 AND "django_comments"."is_public" ANDNOT "django_comments"."is_removed")
10 similar queries.
0.62
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_by_tag(235)
return render_articles_list(request, articles, 10, tag)/home/nathan/rb/site/./blog/views.py in render_articles_list(73)
return render(request, 'blog/blog_list.html', {'articles': articles, 'drafts': drafts, 'tag': tag,/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" = 875 LIMIT 21SELECT ••• FROM "blog_articlestats" WHERE "blog_articlestats"."article_id" = 875 LIMIT 21
10 similar queries.
0.11
Connection: default
Transaction status: In transaction
/home/nathan/rb/site/./blog/views.py in blog_by_tag(235)
return render_articles_list(request, articles, 10, tag)/home/nathan/rb/site/./blog/views.py in render_articles_list(73)
return render(request, 'blog/blog_list.html', {'articles': articles, 'drafts': drafts, 'tag': tag,/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)
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
10 similar queries.
Duplicated 8 times.
0.10
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_by_tag(235)
return render_articles_list(request, articles, 10, tag)/home/nathan/rb/site/./blog/views.py in render_articles_list(73)
return render(request, 'blog/blog_list.html', {'articles': articles, 'drafts': drafts, 'tag': tag,/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 "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
10 similar queries.
Duplicated 10 times.
0.10
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_by_tag(235)
return render_articles_list(request, articles, 10, tag)/home/nathan/rb/site/./blog/views.py in render_articles_list(73)
return render(request, 'blog/blog_list.html', {'articles': articles, 'drafts': drafts, 'tag': tag,
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" = '873' 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" = '873' AND "django_comments"."site_id" = 1 AND "django_comments"."is_public" ANDNOT "django_comments"."is_removed")
10 similar queries.
1.11
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_by_tag(235)
return render_articles_list(request, articles, 10, tag)/home/nathan/rb/site/./blog/views.py in render_articles_list(73)
return render(request, 'blog/blog_list.html', {'articles': articles, 'drafts': drafts, 'tag': tag,/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" = 873 LIMIT 21SELECT ••• FROM "blog_articlestats" WHERE "blog_articlestats"."article_id" = 873 LIMIT 21
10 similar queries.
0.09
Connection: default
Transaction status: In transaction
/home/nathan/rb/site/./blog/views.py in blog_by_tag(235)
return render_articles_list(request, articles, 10, tag)/home/nathan/rb/site/./blog/views.py in render_articles_list(73)
return render(request, 'blog/blog_list.html', {'articles': articles, 'drafts': drafts, 'tag': tag,/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)
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-22T11:43:03.925840+00:00'::timestamptz AND ("ads_banner"."end_date" > '2026-01-22T11:43:03.925942+00:00'::timestamptz OR "ads_banner"."end_date" ISNULL) AND "ads_banner"."height" <= 600 AND "ads_banner"."start_date" < '2026-01-22T11:43:03.925820+00:00'::timestamptz AND "ads_banner"."width" <= 262 AND ("ads_banner"."end_date" ISNULLOR "ads_banner"."end_date" > '2026-01-22T11:43:03.926240+00:00'::timestamptz) AND "ads_banner"."country_code" = 'US')SELECT ••• FROM "ads_banner" WHERE ("ads_banner"."start_date" < '2026-01-22T11:43:03.925840+00:00'::timestamptz AND ("ads_banner"."end_date" > '2026-01-22T11:43:03.925942+00:00'::timestamptz OR "ads_banner"."end_date" ISNULL) AND "ads_banner"."height" <= 600 AND "ads_banner"."start_date" < '2026-01-22T11:43:03.925820+00:00'::timestamptz AND "ads_banner"."width" <= 262 AND ("ads_banner"."end_date" ISNULLOR "ads_banner"."end_date" > '2026-01-22T11:43:03.926240+00:00'::timestamptz) AND "ads_banner"."country_code" = 'US')
2 similar queries.
3.14
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_by_tag(235)
return render_articles_list(request, articles, 10, tag)/home/nathan/rb/site/./blog/views.py in render_articles_list(73)
return render(request, 'blog/blog_list.html', {'articles': articles, 'drafts': drafts, 'tag': tag,/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-22T11:43:03.925840+00:00'::timestamptz AND ("ads_banner"."end_date" > '2026-01-22T11:43:03.925942+00:00'::timestamptz OR "ads_banner"."end_date" ISNULL) AND "ads_banner"."height" <= 600 AND "ads_banner"."start_date" < '2026-01-22T11:43:03.925820+00:00'::timestamptz AND "ads_banner"."width" <= 262 AND ("ads_banner"."end_date" ISNULLOR "ads_banner"."end_date" > '2026-01-22T11:43:03.926240+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-22T11:43:03.925840+00:00'::timestamptz AND ("ads_banner"."end_date" > '2026-01-22T11:43:03.925942+00:00'::timestamptz OR "ads_banner"."end_date" ISNULL) AND "ads_banner"."height" <= 600 AND "ads_banner"."start_date" < '2026-01-22T11:43:03.925820+00:00'::timestamptz AND "ads_banner"."width" <= 262 AND ("ads_banner"."end_date" ISNULLOR "ads_banner"."end_date" > '2026-01-22T11:43:03.926240+00:00'::timestamptz) AND "ads_banner"."country_code" = 'US') ORDER BY 1 DESC, RANDOM() ASCLIMIT 1
2 similar queries.
3.73
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_by_tag(235)
return render_articles_list(request, articles, 10, tag)/home/nathan/rb/site/./blog/views.py in render_articles_list(73)
return render(request, 'blog/blog_list.html', {'articles': articles, 'drafts': drafts, 'tag': tag,/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-22T11:43:03.947787+00:00'::timestamptz AND ("ads_banner"."end_date" > '2026-01-22T11:43:03.947909+00:00'::timestamptz OR "ads_banner"."end_date" ISNULL) AND "ads_banner"."height" <= 600 AND "ads_banner"."start_date" < '2026-01-22T11:43:03.947764+00:00'::timestamptz AND "ads_banner"."width" <= 262 AND ("ads_banner"."end_date" ISNULLOR "ads_banner"."end_date" > '2026-01-22T11:43:03.948123+00:00'::timestamptz) AND "ads_banner"."country_code" = 'US')SELECT ••• FROM "ads_banner" WHERE ("ads_banner"."start_date" < '2026-01-22T11:43:03.947787+00:00'::timestamptz AND ("ads_banner"."end_date" > '2026-01-22T11:43:03.947909+00:00'::timestamptz OR "ads_banner"."end_date" ISNULL) AND "ads_banner"."height" <= 600 AND "ads_banner"."start_date" < '2026-01-22T11:43:03.947764+00:00'::timestamptz AND "ads_banner"."width" <= 262 AND ("ads_banner"."end_date" ISNULLOR "ads_banner"."end_date" > '2026-01-22T11:43:03.948123+00:00'::timestamptz) AND "ads_banner"."country_code" = 'US')
2 similar queries.
2.11
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_by_tag(235)
return render_articles_list(request, articles, 10, tag)/home/nathan/rb/site/./blog/views.py in render_articles_list(73)
return render(request, 'blog/blog_list.html', {'articles': articles, 'drafts': drafts, 'tag': tag,/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-22T11:43:03.947787+00:00'::timestamptz AND ("ads_banner"."end_date" > '2026-01-22T11:43:03.947909+00:00'::timestamptz OR "ads_banner"."end_date" ISNULL) AND "ads_banner"."height" <= 600 AND "ads_banner"."start_date" < '2026-01-22T11:43:03.947764+00:00'::timestamptz AND "ads_banner"."width" <= 262 AND ("ads_banner"."end_date" ISNULLOR "ads_banner"."end_date" > '2026-01-22T11:43:03.948123+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-22T11:43:03.947787+00:00'::timestamptz AND ("ads_banner"."end_date" > '2026-01-22T11:43:03.947909+00:00'::timestamptz OR "ads_banner"."end_date" ISNULL) AND "ads_banner"."height" <= 600 AND "ads_banner"."start_date" < '2026-01-22T11:43:03.947764+00:00'::timestamptz AND "ads_banner"."width" <= 262 AND ("ads_banner"."end_date" ISNULLOR "ads_banner"."end_date" > '2026-01-22T11:43:03.948123+00:00'::timestamptz) AND "ads_banner"."country_code" = 'US') ORDER BY 1 DESC, RANDOM() ASCLIMIT 1
2 similar queries.
2.07
Connection: default
Transaction status: Idle
/home/nathan/rb/site/./blog/views.py in blog_by_tag(235)
return render_articles_list(request, articles, 10, tag)/home/nathan/rb/site/./blog/views.py in render_articles_list(73)
return render(request, 'blog/blog_list.html', {'articles': articles, 'drafts': drafts, 'tag': tag,/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 %}