Add widget debug logging to post context processor
All checks were successful
Build and Deploy / build-and-deploy (push) Successful in 49s
All checks were successful
Build and Deploy / build-and-deploy (push) Successful in 49s
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -69,16 +69,25 @@ def register():
|
||||
db_post_id = (g.post_data.get("post") or {}).get("id")
|
||||
post_slug = (g.post_data.get("post") or {}).get("slug", "")
|
||||
|
||||
# Widget-driven container nav — only include widgets with data
|
||||
# Widget-driven container nav
|
||||
import logging
|
||||
_log = logging.getLogger("coop")
|
||||
_log.warning("WIDGET DEBUG: %d nav widgets registered, post_id=%s slug=%s",
|
||||
len(widgets.container_nav), db_post_id, post_slug)
|
||||
container_nav_loaded = []
|
||||
for w in widgets.container_nav:
|
||||
wctx = await w.context_fn(
|
||||
g.s, container_type="page", container_id=db_post_id,
|
||||
post_slug=post_slug,
|
||||
)
|
||||
# Include widget if it has any list data
|
||||
if any(v for v in wctx.values() if isinstance(v, list) and v):
|
||||
container_nav_loaded.append({"widget": w, "ctx": wctx})
|
||||
try:
|
||||
wctx = await w.context_fn(
|
||||
g.s, container_type="page", container_id=db_post_id,
|
||||
post_slug=post_slug,
|
||||
)
|
||||
has_data = any(v for v in wctx.values() if isinstance(v, list) and v)
|
||||
_log.warning("WIDGET DEBUG: %s has_data=%s keys=%s", w.domain, has_data,
|
||||
{k: len(v) if isinstance(v, list) else v for k, v in wctx.items()})
|
||||
if has_data:
|
||||
container_nav_loaded.append({"widget": w, "ctx": wctx})
|
||||
except Exception as e:
|
||||
_log.exception("WIDGET ERROR: %s: %s", w.domain, e)
|
||||
|
||||
ctx = {
|
||||
**p_data,
|
||||
|
||||
Reference in New Issue
Block a user