With the recent (as of writing) release of the 10305-1 Lion Knight's Castle, it seems the Castle theme is back from the past. But the revival already started last year, with the release of 2 other sets: LEGO Ideas Medieval Blacksmith and Creator 3-in-1 Medieval Castle. I've reviewed both of these sets here and here, but afterwards they started to collect dust on the shelf. Time to do something new with them.
The sets seem to be popular among MOC designers. The Medieval Blacksmith has 26 Alternates and Modifications (as of writing), and the Medieval Castle has more than 50. While searching for alternate MOCs, I came across MOC Designer Gr33tje, who has a lot of Castle themed MOCs. Most of them use one of the sets I have, but there are also a couple who combine both sets into 1 big MOC. Today, I'll be looking at one of these combos: the MOC-118869 Medieval Castle Keep.
-Can you tell us something about yourself. Who is behind Gr33tje13? My name is Gregor and I'm from the Netherlands.
-How long have you been building with LEGO? Did you experience any Dark Ages? I've been a big fan of Lego since I was a little kid. I did experience a time without Lego from when I turned 15 or so (now in my 30’s), but picked it up during the first Covid lockdown in the Netherlands (early 2020). First going through all the Lego I got as a kid and later that time with new sets. I haven't stopped building ever since and I really enjoy it!
-Where did you get the inspiration for this MOC? The inspiration comes from various places. It was mainly images and ideas I had in my head of what I thought a Medieval Keep would look like. The two sets go together really well and pretty quickly the first elements/parts got build and I was really happy with how it looked. Just before I started this MOC, I finished the Medieval Castle Gate MOC and thought it would be great to have a Keep next to it to make it part of a larger Castle/Medieval town. I designed the Castle Keep as an individual model, but made it possible to connect the two MOCs for larger Castle display.
-How long did it take you to design this MOC? I think about a month or so to design, build and make the instructions.
-What design feature are you happiest with, and what didn’t work out as well as you’d hoped? I’m really happy with how the building can be opened up and function as both a display set and play set. This took quite some time to make this work well and look good both ways and I think it turned out really well. Also, the inclusion of the light brick in a different way then I have done before, is something I’m quite happy with.
-Are there things you would have done differently if you weren't limited by the donor-set? Yes, there are some details or connections that I might have changed to make it better. But overall, I’m really happy with how it turned out. Usually when I think things aren’t working out or I don’t like the look, I change them or try and think of different ways to make it better.
-Are you buying sets with the intention of turning them into MOCs or do you design MOCs from your larger collection? Hmm, a bit of both. I buy sets mainly because I like them as a set and build. But these also happen to be sets that I already have some ideas for to make MOCs. I really like the challenge of creating alternative builds for sets and keep the sets separate in my collection (no large bin or anything).
-What’s your favorite set and/or theme, and why? The Medieval Blacksmith has been my most recent favorite set. I loved Castle sets when I was a kid and I really enjoyed the build. The fact that it has such an amazing set of parts as well, is great as well. I have done a good number of alternates from this set as it keeps inspiring me to make more.
-What’s your favorite part, and why? I don’t have particular favorite part, but the SNOT bricks have been an eye opener for me. I missed this development during my Dark Ages and when I started building again, I had to get used to these bricks first. But now, I see how they added a whole new way of building and how you can create so much more different things and looks. I really like that.
-Are you currently working on a MOC? No, not yet. I just finished an alternate for the Haunted House set. Not sure what the next one will be, but I still have a lot of ideas.
The MOC
The description on the MOC page:
The Medieval Castle Keep MOC is an alternate combining Lego set 31120 - Medieval Castle and set 21325 - Medieval Blacksmith. This design can be build using only pieces from those two sets (including spare parts).
The MOC consist of a few builds. The biggest one is the Castle Keep. The keep is build on top of a small spring. Water runs out on the side of the keep. The raised ground level can be accessed by going up the outdoor stairs. The main hall has a fire place that lights up, a kitchen and gives access to the first floor and guard post. The keep can be opened completely. The first floor can be accessed by removing the roof and the whole floor can be taken off. Next to this Keep, the MOC includes instructions for a wagon and a wall extension.
The MOC is part 2 of a larger Medieval Castle. The Keep can be displayed as an individual build or can be combined with the Medieval Castle Gate MOC. The wall extension and various clips can be used to connect this MOC to my Medieval Castle Gate MOC. The overview can be found here.
Hope you will enjoy this MOC!
This MOC is an alternate build of Medieval Blacksmith and Medieval Castle. This means the MOC only uses parts from these 2 sets. The MOC uses 3151 parts, or 88% of the available parts from the donor sets. The high quality instructions consist of a pdf file with 438 steps on 161 pages.
The Build
We start with the ground. In the dungeons of the keep is a river or stream for fresh water. The keep is partly built onto a rock formation.
I find it a pity that the dungeons get covered for the largest part. There are not enough tiles leftover to create a modular-style floor that can be lifted. You can of course grap some from your own collection to add a layer.
This downside is for the most part compensated by an hinging section. This section houses a prisoner who seems to be forgotten, and a storage area for firewood. As the staircase shows, this is not a simple standard design. There are small details and variations all over the build.
If this was an official set, I would say that stage 1 is finished here, with the ground and dungeon completed.
On to the first floor. In the great hall we find a food storage and a cooking area with a fireplace that lights up. The button for the light is cleverly hidden in the chimney.
In the back you can see why the Dutch word for windowsill is "vensterbank" or literally translated "window-couch". In medieval times, windows often had a seating area, so you can read or perform repair work in optimal sunlight as long as possible.
Above the hinging section we find a weapon repair area, and a door leading to a guardpost. In the back, next to the chimney is a panel in the wall that can be opened up. I'm not sure if this is done to fill a large section of the wall, or if this is a play feature so bandits can attack the keep. Either way works.
And that finishes this floor.
On to the attic. Here we find a bed, fireplace and table.
The doorway is simply beautiful, and leads to a guardpost.
Slowly we move upward. Like the 21325-1 Medieval Blacksmith, you don't realize how big this MOC is until you see it in real life.
With the roof added, the attic is ready. The sections can be taken off to look inside.
The keep gets a finishing touch with a tree and a lot of other green and decorations on the ground
Judging by the red roof, I think this is a merchant selling weapons and/or armor.
The very final build is this wall section. It is not a crucial addition to the keep, but it can be used to connect this MOC to MOC-114472 Medieval Castle Gate.
Conclusion
This is such a beautiful model! I enjoyed every step of it, with easy to follow instructions, but also enough challenge to keep the build engaging. Gr33tje clearly did not take the easy route while designing the keep. It is not a standard building, but there are multiple uneven levels, staircases and hidden corners. The building feels medieval, with the tudor style outside and inside details. There are some sections that are a bit unstable during the build, but it all gets stabilized later on. Especially the chimney in the attic is a bit unstable, because it floats a bit. I've placed a plate underneath during the build that fixed that problem. I don't really see this as a problem: if you want a save build, you can get a LEGO set. But with safety also comes a bit of boredom. With this MOC, you need some more focus, but the build-experience is a lot better.
If you have the 2 donor sets, I can highly recommend this MOC. You can buy the instructions to Gr33tje13's MOC here for €12.50 Follow him by hitting this big awesome button.
Thank you for posting pics of the dungeon level and the inside of the build. It's very good detail. Brings up the strength of the build. I already have built myself a 2x size Blacksmith and a 3x Creator castle. I'd love to do this build with different color tiles on the roof. Designer Klassic Bricks has some cool builds with red & black Nexo roof tiles. I want to build a few MOCs like this to go in my castle town. Maybe build a big parts list to do this plus castle gate of Gr33tje's builds.
I'm already following Gr33tje, his medieval MOCs are really well designed. I know they are way above what I am able to come up with for now. Seeing you go through the various phases and showcasing the details of the build really highlights the quality. Thanks for the review and interview!
Awesome MOC, awesome designer, awesome review and interview! Alternate builds are a huge challenge for MOCers and Gr33tje somehow makes it look easy, with a seemingly endless stream of inspiration and very polished designs. These are two of my top favorites sets too :D
default
1099.73 ms (106 queries
including 79 similar
and 28 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" = 531) LIMIT 21SELECT ••• FROM "blog_article" WHERE ("blog_article"."is_active" AND "blog_article"."id" = 531) LIMIT 21
9 similar queries.
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(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", 'MOC Review: MOC-118869 - Medieval Castle Keep') + SIMILARITY("blog_article"."body", 'With the recent (as of writing) release of the 10305-1 Lion Knight''s Castle, it seems the Castle theme is back from the past. But the revival already started last year, with the release of 2 other sets: LEGO Ideas Medieval Blacksmith and Creator 3-in-1 Medieval Castle. I''ve reviewed both of these sets here and here, but afterwards they started to collect dust on the shelf. Time to do something new with them.
The sets seem to be popular among MOC designers. The Medieval Blacksmith has 26 Alternates and Modifications (as of writing), and the Medieval Castle has more than 50. While searching for alternate MOCs, I came across MOC Designer Gr33tje, who has a lot of Castle themed MOCs. Most of them use one of the sets I have, but there are also a couple who combine both sets into 1 big MOC. Today, I''ll be looking at one of these combos: the MOC-118869 Medieval Castle Keep.
Contents:
Q&AThe MOCThe BuildConclusion
Q&A
-Can you tell us something about yourself. Who is behind Gr33tje13?My name is Gregor and I''m from the Netherlands. -How long have you been building with LEGO? Did you experience any Dark Ages?I''ve been a big fan of Lego since I was a little kid. I did experience a time without Lego from when I turned 15 or so (now in my 30’s), but picked it up during the first Covid lockdown in the Netherlands (early 2020). First going through all the Lego I got as a kid and later that time with new sets. I haven''t stopped building ever since and I really enjoy it!-Where did you get the inspiration for this MOC?The inspiration comes from various places. It was mainly images and ideas I had in my head of what I thought a Medieval Keep would look like. The two sets go together really well and pretty quickly the first elements/parts got build and I was really happy with how it looked. Just before I started this MOC, I finished the Medieval Castle Gate MOC and thought it would be great to have a Keep next to it to make it part of a larger Castle/Medieval town. I designed the Castle Keep as an individual model, but made it possible to connect the two MOCs for larger Castle display.-How long did it take you to design this MOC?I think about a month or so to design, build and make the instructions.-What design feature are you happiest with, and what didn’t work out as well as you’d hoped?I’m really happy with how the building can be opened up and function as both a display set and play set. This took quite some time to make this work well and look good both ways and I think it turned out really well. Also, the inclusion of the light brick in a different way then I have done before, is something I’m quite happy with. -Are there things you would have done differently if you weren''t limited by the donor-set?Yes, there are some details or connections that I might have changed to make it better. But overall, I’m really happy with how it turned out. Usually when I think things aren’t working out or I don’t like the look, I change them or try and think of different ways to make it better.-Are you buying sets with the intention of turning them into MOCs or do you design MOCs from your larger collection?Hmm, a bit of both. I buy sets mainly because I like them as a set and build. But these also happen to be sets that I already have some ideas for to make MOCs. I really like the challenge of creating alternative builds for sets and keep the sets separate in my collection (no large bin or anything).-What’s your favorite set and/or theme, and why?The Medieval Blacksmith has been my most recent favorite set. I loved Castle sets when I was a kid and I really enjoyed the build. The fact that it has such an amazing set of parts as well, is great as well. I have done a good number of alternates from this set as it keeps inspiring me to make more.
-What’s your favorite part, and why?I don’t have particular favorite part, but the SNOT bricks have been an eye opener for me. I missed this development during my Dark Ages and when I started building again, I had to get used to these bricks first. But now, I see how they added a whole new way of building and how you can create so much more different things and looks. I really like that.
-Are you currently working on a MOC? No, not yet. I just finished an alternate for the Haunted House set. Not sure what the next one will be, but I still have a lot of ideas.
The MOC
The description on the MOC page:
The Medieval Castle Keep MOC is an alternate combining Lego set 31120 - Medieval Castle and set 21325 - Medieval Blacksmith. This design can be build using only pieces from those two sets (including spare parts). The MOC consist of a few builds. The biggest one is the Castle Keep. The keep is build on top of a small spring. Water runs out on the side of the keep. The raised ground level can be accessed by going up the outdoor stairs. The main hall has a fire place that lights up, a kitchen and gives access to the first floor and guard post. The keep can be opened completely. The first floor can be accessed by removing the roof and the whole floor can be taken off. Next to this Keep, the MOC includes instructions for a wagon and a wall extension.The MOC is part 2 of a larger Medieval Castle. The Keep can be displayed as an individual build or can be combined with the Medieval Castle Gate MOC. The wall extension and various clips can be used to connect this MOC to my Medieval Castle Gate MOC. The overview can be found here.Hope you will enjoy this MOC!
This MOC is an alternate build of Medieval Blacksmith and Medieval Castle. This means the MOC only uses parts from these 2 sets. The MOC uses 3151 parts, or 88% of the available parts from the donor sets. The high quality instructions consist of a pdf file with 438 steps on 161 pages.
The Build
We start with the ground. In the dungeons of the keep is a river or stream for fresh water. The keep is partly built onto a rock formation.
')) 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-23T10:57:57.904302+00:00'::timestamptz ANDNOT ("blog_article"."id" = 531)) 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", 'MOC Review: MOC-118869 - Medieval Castle Keep') + SIMILARITY("blog_article"."body", 'With the recent (as of writing) release of the 10305-1 Lion Knight''s Castle, it seems the Castle theme is back from the past. But the revival already started last year, with the release of 2 other sets: LEGO Ideas Medieval Blacksmith and Creator 3-in-1 Medieval Castle. I''ve reviewed both of these sets here and here, but afterwards they started to collect dust on the shelf. Time to do something new with them.
The sets seem to be popular among MOC designers. The Medieval Blacksmith has 26 Alternates and Modifications (as of writing), and the Medieval Castle has more than 50. While searching for alternate MOCs, I came across MOC Designer Gr33tje, who has a lot of Castle themed MOCs. Most of them use one of the sets I have, but there are also a couple who combine both sets into 1 big MOC. Today, I''ll be looking at one of these combos: the MOC-118869 Medieval Castle Keep.
Contents:
Q&AThe MOCThe BuildConclusion
Q&A
-Can you tell us something about yourself. Who is behind Gr33tje13?My name is Gregor and I''m from the Netherlands. -How long have you been building with LEGO? Did you experience any Dark Ages?I''ve been a big fan of Lego since I was a little kid. I did experience a time without Lego from when I turned 15 or so (now in my 30’s), but picked it up during the first Covid lockdown in the Netherlands (early 2020). First going through all the Lego I got as a kid and later that time with new sets. I haven''t stopped building ever since and I really enjoy it!-Where did you get the inspiration for this MOC?The inspiration comes from various places. It was mainly images and ideas I had in my head of what I thought a Medieval Keep would look like. The two sets go together really well and pretty quickly the first elements/parts got build and I was really happy with how it looked. Just before I started this MOC, I finished the Medieval Castle Gate MOC and thought it would be great to have a Keep next to it to make it part of a larger Castle/Medieval town. I designed the Castle Keep as an individual model, but made it possible to connect the two MOCs for larger Castle display.-How long did it take you to design this MOC?I think about a month or so to design, build and make the instructions.-What design feature are you happiest with, and what didn’t work out as well as you’d hoped?I’m really happy with how the building can be opened up and function as both a display set and play set. This took quite some time to make this work well and look good both ways and I think it turned out really well. Also, the inclusion of the light brick in a different way then I have done before, is something I’m quite happy with. -Are there things you would have done differently if you weren''t limited by the donor-set?Yes, there are some details or connections that I might have changed to make it better. But overall, I’m really happy with how it turned out. Usually when I think things aren’t working out or I don’t like the look, I change them or try and think of different ways to make it better.-Are you buying sets with the intention of turning them into MOCs or do you design MOCs from your larger collection?Hmm, a bit of both. I buy sets mainly because I like them as a set and build. But these also happen to be sets that I already have some ideas for to make MOCs. I really like the challenge of creating alternative builds for sets and keep the sets separate in my collection (no large bin or anything).-What’s your favorite set and/or theme, and why?The Medieval Blacksmith has been my most recent favorite set. I loved Castle sets when I was a kid and I really enjoyed the build. The fact that it has such an amazing set of parts as well, is great as well. I have done a good number of alternates from this set as it keeps inspiring me to make more.
-What’s your favorite part, and why?I don’t have particular favorite part, but the SNOT bricks have been an eye opener for me. I missed this development during my Dark Ages and when I started building again, I had to get used to these bricks first. But now, I see how they added a whole new way of building and how you can create so much more different things and looks. I really like that.
-Are you currently working on a MOC? No, not yet. I just finished an alternate for the Haunted House set. Not sure what the next one will be, but I still have a lot of ideas.
The MOC
The description on the MOC page:
The Medieval Castle Keep MOC is an alternate combining Lego set 31120 - Medieval Castle and set 21325 - Medieval Blacksmith. This design can be build using only pieces from those two sets (including spare parts). The MOC consist of a few builds. The biggest one is the Castle Keep. The keep is build on top of a small spring. Water runs out on the side of the keep. The raised ground level can be accessed by going up the outdoor stairs. The main hall has a fire place that lights up, a kitchen and gives access to the first floor and guard post. The keep can be opened completely. The first floor can be accessed by removing the roof and the whole floor can be taken off. Next to this Keep, the MOC includes instructions for a wagon and a wall extension.The MOC is part 2 of a larger Medieval Castle. The Keep can be displayed as an individual build or can be combined with the Medieval Castle Gate MOC. The wall extension and various clips can be used to connect this MOC to my Medieval Castle Gate MOC. The overview can be found here.Hope you will enjoy this MOC!
This MOC is an alternate build of Medieval Blacksmith and Medieval Castle. This means the MOC only uses parts from these 2 sets. The MOC uses 3151 parts, or 88% of the available parts from the donor sets. The high quality instructions consist of a pdf file with 438 steps on 161 pages.
The Build
We start with the ground. In the dungeons of the keep is a river or stream for fresh water. The keep is partly built onto a rock formation.
')) 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-23T10:57:57.904302+00:00'::timestamptz ANDNOT ("blog_article"."id" = 531)) ORDER BY 19 DESC, "blog_article"."published_date" DESCLIMIT 20
1015.39
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-22T10:57:58.922608+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-22T10:57:58.922608+00:00'::timestamptz) ORDER BY "blog_articlestats"."hits" DESCLIMIT 20
11.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(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.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(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.23
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.30
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.26
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.27
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.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(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" = '2022-12-06T00:00:08.111094+00:00'::timestamptz AND "blog_article"."id" > 531) OR "blog_article"."published_date" > '2022-12-06T00:00:08.111094+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" = '2022-12-06T00:00:08.111094+00:00'::timestamptz AND "blog_article"."id" > 531) OR "blog_article"."published_date" > '2022-12-06T00:00:08.111094+00:00'::timestamptz)) ORDER BY "blog_article"."published_date" ASC, "blog_article"."id" ASCLIMIT 1
0.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(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" = '2022-12-06T00:00:08.111094+00:00'::timestamptz AND "blog_article"."id" < 531) OR "blog_article"."published_date" < '2022-12-06T00:00:08.111094+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" = '2022-12-06T00:00:08.111094+00:00'::timestamptz AND "blog_article"."id" < 531) OR "blog_article"."published_date" < '2022-12-06T00:00:08.111094+00:00'::timestamptz)) ORDER BY "blog_article"."published_date" DESC, "blog_article"."id" DESCLIMIT 1
0.66
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" = 'MOC-118869' LIMIT 21SELECT ••• FROM "lego_baseset" WHERE "lego_baseset"."set_num" = 'MOC-118869' LIMIT 21
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(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))
/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(194)
moc.moc.spot = 'blog_review'
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" = '31120-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" = '31120-1') LIMIT 21
0.76
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 (98028))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 (98028))
0.49
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" = 98028 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" = 98028 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.74
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" = '31120-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" = '31120-1') LIMIT 21
0.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(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.22
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.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/./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.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(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.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)
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
17 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 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" = '531' 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" = '531' AND "django_comments"."site_id" = 1 AND "django_comments"."is_public" ANDNOT "django_comments"."is_removed")
2 similar queries.
Duplicated 2 times.
0.76
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" = 531 LIMIT 21SELECT ••• FROM "blog_articlestats" WHERE "blog_articlestats"."article_id" = 531 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)
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" = 472014 LIMIT 21SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 472014 LIMIT 21
17 similar queries.
0.27
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/./lego/models/sets.py in get_absolute_url(615)
return self.get_moc().get_absolute_url()/home/nathan/rb/site/./lego/models/mocs.py in get_absolute_url(765)
url = "/mocs/{0}/{1}/{2}/".format(self.set_num, parse.quote(self.designer.username, safe=''), slug)
41
{# cache 3600 'render_set_img_tn_2' set.id tn_options mtime set.get_absolute_url #} {# about 40ms for 50 images in debug, disabled as pending moc preview never works #}
42
{# Image #}
43
<div class="clearfix {% if set.is_figure %} js-hover-card{% endif %}" {% if set.is_figure %}data-hover="{% url 'minfig_hover' set.set_num %}"{% endif %}>
44
<a href="{{ set.get_absolute_url }}{% if inventory and not set.is_moc %}?inventory={{ inventory.version }}{% endif %}">
45
{% if not set.img_dir and set.is_figure %}
46
{% include 'lego/includes/render_set_img.html' with img_file='nil_mf.jpg' tn_options=tn_options %}
47
{% else %}
48
{% include 'lego/includes/render_set_img.html' with img_file=set.img_dir tn_options=tn_options %}
SELECT 1 AS "a" FROM "lego_mocswitherrors" WHERE "lego_mocswitherrors"."moc_id" = 142086 LIMIT 1SELECT ••• FROM "lego_mocswitherrors" WHERE "lego_mocswitherrors"."moc_id" = 142086 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/./lego/models/mocs.py in is_alternate(204)
if not self.is_pending and MocsWithErrors.objects.filter(moc=self).exists():
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" = 531) 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" = 531) GROUP BY "taggit_tag"."id"
29.35
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-22T10:57:59.026624+00:00'::timestamptz AND ("ads_banner"."end_date" > '2026-01-22T10:57:59.026755+00:00'::timestamptz OR "ads_banner"."end_date" ISNULL) AND "ads_banner"."height" <= 350 AND "ads_banner"."start_date" < '2026-01-22T10:57:59.026599+00:00'::timestamptz AND "ads_banner"."width" <= 262 AND ("ads_banner"."end_date" ISNULLOR "ads_banner"."end_date" > '2026-01-22T10:57:59.026892+00:00'::timestamptz) AND "ads_banner"."country_code" = 'US')SELECT ••• FROM "ads_banner" WHERE ("ads_banner"."start_date" < '2026-01-22T10:57:59.026624+00:00'::timestamptz AND ("ads_banner"."end_date" > '2026-01-22T10:57:59.026755+00:00'::timestamptz OR "ads_banner"."end_date" ISNULL) AND "ads_banner"."height" <= 350 AND "ads_banner"."start_date" < '2026-01-22T10:57:59.026599+00:00'::timestamptz AND "ads_banner"."width" <= 262 AND ("ads_banner"."end_date" ISNULLOR "ads_banner"."end_date" > '2026-01-22T10:57:59.026892+00:00'::timestamptz) AND "ads_banner"."country_code" = 'US')
4 similar queries.
2.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:
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-22T10:57:59.026624+00:00'::timestamptz AND ("ads_banner"."end_date" > '2026-01-22T10:57:59.026755+00:00'::timestamptz OR "ads_banner"."end_date" ISNULL) AND "ads_banner"."height" <= 350 AND "ads_banner"."start_date" < '2026-01-22T10:57:59.026599+00:00'::timestamptz AND "ads_banner"."width" <= 262 AND ("ads_banner"."end_date" ISNULLOR "ads_banner"."end_date" > '2026-01-22T10:57:59.026892+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-22T10:57:59.026624+00:00'::timestamptz AND ("ads_banner"."end_date" > '2026-01-22T10:57:59.026755+00:00'::timestamptz OR "ads_banner"."end_date" ISNULL) AND "ads_banner"."height" <= 350 AND "ads_banner"."start_date" < '2026-01-22T10:57:59.026599+00:00'::timestamptz AND "ads_banner"."width" <= 262 AND ("ads_banner"."end_date" ISNULLOR "ads_banner"."end_date" > '2026-01-22T10:57:59.026892+00:00'::timestamptz) AND "ads_banner"."country_code" = 'US') ORDER BY 1 DESC, RANDOM() ASCLIMIT 1
4 similar queries.
1.87
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-22T10:57:59.042379+00:00'::timestamptz AND ("ads_banner"."end_date" > '2026-01-22T10:57:59.042564+00:00'::timestamptz OR "ads_banner"."end_date" ISNULL) AND "ads_banner"."height" <= 600 AND "ads_banner"."start_date" < '2026-01-22T10:57:59.042343+00:00'::timestamptz AND "ads_banner"."width" <= 262 AND ("ads_banner"."end_date" ISNULLOR "ads_banner"."end_date" > '2026-01-22T10:57:59.042772+00:00'::timestamptz) AND "ads_banner"."country_code" = 'US')SELECT ••• FROM "ads_banner" WHERE ("ads_banner"."start_date" < '2026-01-22T10:57:59.042379+00:00'::timestamptz AND ("ads_banner"."end_date" > '2026-01-22T10:57:59.042564+00:00'::timestamptz OR "ads_banner"."end_date" ISNULL) AND "ads_banner"."height" <= 600 AND "ads_banner"."start_date" < '2026-01-22T10:57:59.042343+00:00'::timestamptz AND "ads_banner"."width" <= 262 AND ("ads_banner"."end_date" ISNULLOR "ads_banner"."end_date" > '2026-01-22T10:57:59.042772+00:00'::timestamptz) AND "ads_banner"."country_code" = 'US')
4 similar queries.
2.44
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-22T10:57:59.042379+00:00'::timestamptz AND ("ads_banner"."end_date" > '2026-01-22T10:57:59.042564+00:00'::timestamptz OR "ads_banner"."end_date" ISNULL) AND "ads_banner"."height" <= 600 AND "ads_banner"."start_date" < '2026-01-22T10:57:59.042343+00:00'::timestamptz AND "ads_banner"."width" <= 262 AND ("ads_banner"."end_date" ISNULLOR "ads_banner"."end_date" > '2026-01-22T10:57:59.042772+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-22T10:57:59.042379+00:00'::timestamptz AND ("ads_banner"."end_date" > '2026-01-22T10:57:59.042564+00:00'::timestamptz OR "ads_banner"."end_date" ISNULL) AND "ads_banner"."height" <= 600 AND "ads_banner"."start_date" < '2026-01-22T10:57:59.042343+00:00'::timestamptz AND "ads_banner"."width" <= 262 AND ("ads_banner"."end_date" ISNULLOR "ads_banner"."end_date" > '2026-01-22T10:57:59.042772+00:00'::timestamptz) AND "ads_banner"."country_code" = 'US') ORDER BY 1 DESC, RANDOM() ASCLIMIT 1
4 similar queries.
2.04
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-22T10:57:59.050571+00:00'::timestamptz AND ("ads_banner"."end_date" > '2026-01-22T10:57:59.050701+00:00'::timestamptz OR "ads_banner"."end_date" ISNULL) AND "ads_banner"."height" <= 600 AND "ads_banner"."start_date" < '2026-01-22T10:57:59.050545+00:00'::timestamptz AND "ads_banner"."width" <= 262 AND ("ads_banner"."end_date" ISNULLOR "ads_banner"."end_date" > '2026-01-22T10:57:59.050841+00:00'::timestamptz) AND "ads_banner"."country_code" = 'US')SELECT ••• FROM "ads_banner" WHERE ("ads_banner"."start_date" < '2026-01-22T10:57:59.050571+00:00'::timestamptz AND ("ads_banner"."end_date" > '2026-01-22T10:57:59.050701+00:00'::timestamptz OR "ads_banner"."end_date" ISNULL) AND "ads_banner"."height" <= 600 AND "ads_banner"."start_date" < '2026-01-22T10:57:59.050545+00:00'::timestamptz AND "ads_banner"."width" <= 262 AND ("ads_banner"."end_date" ISNULLOR "ads_banner"."end_date" > '2026-01-22T10:57:59.050841+00:00'::timestamptz) AND "ads_banner"."country_code" = 'US')
4 similar queries.
1.87
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-22T10:57:59.050571+00:00'::timestamptz AND ("ads_banner"."end_date" > '2026-01-22T10:57:59.050701+00:00'::timestamptz OR "ads_banner"."end_date" ISNULL) AND "ads_banner"."height" <= 600 AND "ads_banner"."start_date" < '2026-01-22T10:57:59.050545+00:00'::timestamptz AND "ads_banner"."width" <= 262 AND ("ads_banner"."end_date" ISNULLOR "ads_banner"."end_date" > '2026-01-22T10:57:59.050841+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-22T10:57:59.050571+00:00'::timestamptz AND ("ads_banner"."end_date" > '2026-01-22T10:57:59.050701+00:00'::timestamptz OR "ads_banner"."end_date" ISNULL) AND "ads_banner"."height" <= 600 AND "ads_banner"."start_date" < '2026-01-22T10:57:59.050545+00:00'::timestamptz AND "ads_banner"."width" <= 262 AND ("ads_banner"."end_date" ISNULLOR "ads_banner"."end_date" > '2026-01-22T10:57:59.050841+00:00'::timestamptz) AND "ads_banner"."country_code" = 'US') ORDER BY 1 DESC, RANDOM() ASCLIMIT 1
4 similar queries.
1.74
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-22T10:57:59.061404+00:00'::timestamptz AND ("ads_banner"."end_date" > '2026-01-22T10:57:59.061605+00:00'::timestamptz OR "ads_banner"."end_date" ISNULL) AND "ads_banner"."height" <= 600 AND "ads_banner"."start_date" < '2026-01-22T10:57:59.061375+00:00'::timestamptz AND "ads_banner"."width" <= 262 AND ("ads_banner"."end_date" ISNULLOR "ads_banner"."end_date" > '2026-01-22T10:57:59.061820+00:00'::timestamptz) AND "ads_banner"."country_code" = 'US')SELECT ••• FROM "ads_banner" WHERE ("ads_banner"."start_date" < '2026-01-22T10:57:59.061404+00:00'::timestamptz AND ("ads_banner"."end_date" > '2026-01-22T10:57:59.061605+00:00'::timestamptz OR "ads_banner"."end_date" ISNULL) AND "ads_banner"."height" <= 600 AND "ads_banner"."start_date" < '2026-01-22T10:57:59.061375+00:00'::timestamptz AND "ads_banner"."width" <= 262 AND ("ads_banner"."end_date" ISNULLOR "ads_banner"."end_date" > '2026-01-22T10:57:59.061820+00:00'::timestamptz) AND "ads_banner"."country_code" = 'US')
4 similar queries.
2.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/./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-22T10:57:59.061404+00:00'::timestamptz AND ("ads_banner"."end_date" > '2026-01-22T10:57:59.061605+00:00'::timestamptz OR "ads_banner"."end_date" ISNULL) AND "ads_banner"."height" <= 600 AND "ads_banner"."start_date" < '2026-01-22T10:57:59.061375+00:00'::timestamptz AND "ads_banner"."width" <= 262 AND ("ads_banner"."end_date" ISNULLOR "ads_banner"."end_date" > '2026-01-22T10:57:59.061820+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-22T10:57:59.061404+00:00'::timestamptz AND ("ads_banner"."end_date" > '2026-01-22T10:57:59.061605+00:00'::timestamptz OR "ads_banner"."end_date" ISNULL) AND "ads_banner"."height" <= 600 AND "ads_banner"."start_date" < '2026-01-22T10:57:59.061375+00:00'::timestamptz AND "ads_banner"."width" <= 262 AND ("ads_banner"."end_date" ISNULLOR "ads_banner"."end_date" > '2026-01-22T10:57:59.061820+00:00'::timestamptz) AND "ads_banner"."country_code" = 'US') ORDER BY 1 DESC, RANDOM() ASCLIMIT 1
4 similar queries.
1.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(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.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/./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" = 531) LIMIT 1SELECT ••• FROM "rb_comments_pagelocked" WHERE ("rb_comments_pagelocked"."content_type_id" = 12 AND "rb_comments_pagelocked"."object_id" = 531) LIMIT 1
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_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 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" = '531' 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" = '531' AND "django_comments"."site_id" = 1 AND "django_comments"."is_public" ANDNOT "django_comments"."is_removed")
2 similar queries.
Duplicated 2 times.
0.59
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 "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" = 476873 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 476873 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESCLIMIT 1
17 similar queries.
Duplicated 2 times.
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(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" = 476873 LIMIT 21SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 476873 LIMIT 21
17 similar queries.
Duplicated 2 times.
0.20
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" = 476873) 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" = 476873) LIMIT 1
18 similar queries.
Duplicated 4 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/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" = 476873) 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" = 476873) LIMIT 1
18 similar queries.
Duplicated 4 times.
0.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)/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" = 597847 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 597847 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESCLIMIT 1
17 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(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" = 597847 LIMIT 21SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 597847 LIMIT 21
17 similar queries.
0.20
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" = 476873 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 476873 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESCLIMIT 1
17 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/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" = 476873 LIMIT 21SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 476873 LIMIT 21
17 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" = 476873) 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" = 476873) LIMIT 1
18 similar queries.
Duplicated 4 times.
0.27
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" = 476873) 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" = 476873) LIMIT 1
18 similar queries.
Duplicated 4 times.
0.20
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" = 931714 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 931714 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESCLIMIT 1
17 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 "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" = 931714 LIMIT 21SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 931714 LIMIT 21
17 similar queries.
0.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)/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" = 931714) 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" = 931714) LIMIT 1
18 similar queries.
Duplicated 2 times.
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(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" = 931714) 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" = 931714) LIMIT 1
18 similar queries.
Duplicated 2 times.
0.18
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" = 916350 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 916350 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESCLIMIT 1
17 similar queries.
0.22
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" = 916350 LIMIT 21SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 916350 LIMIT 21
17 similar queries.
0.17
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" = 798164 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 798164 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESCLIMIT 1
17 similar queries.
0.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)/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" = 798164 LIMIT 21SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 798164 LIMIT 21
17 similar queries.
0.17
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" = 822429 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 822429 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESCLIMIT 1
17 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" = 822429 LIMIT 21SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 822429 LIMIT 21
17 similar queries.
0.29
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" = 253462 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 253462 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESCLIMIT 1
17 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 "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" = 253462 LIMIT 21SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 253462 LIMIT 21
17 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 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" = 253462) 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" = 253462) LIMIT 1
18 similar queries.
Duplicated 2 times.
0.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/./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" = 253462) 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" = 253462) LIMIT 1
18 similar queries.
Duplicated 2 times.
0.18
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" = 253462) LIMIT 21SELECT ••• FROM "accounts_usersetting" WHERE ("accounts_usersetting"."name" = 'privacy' AND "accounts_usersetting"."user_id" = 253462) LIMIT 21
2 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/./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)
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" = 422631 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 422631 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESCLIMIT 1
17 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" = 422631 LIMIT 21SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 422631 LIMIT 21
17 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/./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" = 422631) 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" = 422631) LIMIT 1
18 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" = 422631) 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" = 422631) LIMIT 1
18 similar queries.
Duplicated 2 times.
0.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)/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" = 379757 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 379757 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESCLIMIT 1
17 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 "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" = 379757 LIMIT 21SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 379757 LIMIT 21
17 similar queries.
0.22
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" = 652272 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 652272 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESCLIMIT 1
17 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" = 652272 LIMIT 21SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 652272 LIMIT 21
17 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" = 586385 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 586385 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESCLIMIT 1
17 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" = 586385 LIMIT 21SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 586385 LIMIT 21
17 similar queries.
0.20
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" = 586385) 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" = 586385) LIMIT 1
18 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/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" = 586385) 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" = 586385) LIMIT 1
18 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 "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" = 475724 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 475724 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESCLIMIT 1
17 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" = 475724 LIMIT 21SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 475724 LIMIT 21
17 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/./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" = 475724) 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" = 475724) LIMIT 1
18 similar queries.
Duplicated 2 times.
0.41
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" = 475724) 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" = 475724) LIMIT 1
18 similar queries.
Duplicated 2 times.
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(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" = 4416 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 4416 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESCLIMIT 1
17 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(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" = 4416 LIMIT 21SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 4416 LIMIT 21
17 similar queries.
0.18
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" = 428756 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 428756 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESCLIMIT 1
17 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 "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" = 428756 LIMIT 21SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 428756 LIMIT 21
17 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(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" = 428756) 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" = 428756) LIMIT 1
18 similar queries.
Duplicated 2 times.
0.26
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" = 428756) 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" = 428756) LIMIT 1
18 similar queries.
Duplicated 2 times.
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(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" = 428756) LIMIT 21SELECT ••• FROM "accounts_usersetting" WHERE ("accounts_usersetting"."name" = 'privacy' AND "accounts_usersetting"."user_id" = 428756) LIMIT 21
2 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/./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)
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" = 657890 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESC LIMIT 1SELECT ••• FROM "avatar_avatar" WHERE "avatar_avatar"."user_id" = 657890 ORDER BY "avatar_avatar"."primary" DESC, "avatar_avatar"."date_uploaded" DESCLIMIT 1
17 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" = 657890 LIMIT 21SELECT ••• FROM "lego_designer" INNER JOIN "auth_user" ON ("lego_designer"."user_ptr_id" = "auth_user"."id") WHERE "lego_designer"."user_ptr_id" = 657890 LIMIT 21
17 similar queries.
0.18
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" = 657890) 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" = 657890) LIMIT 1
18 similar queries.
Duplicated 2 times.
0.20
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" = 657890) 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" = 657890) LIMIT 1
18 similar queries.
Duplicated 2 times.
0.27
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>
16 COMMENTS
for example, i'm Polish and i talk better in english than my parents