Django patterns -- custom user model, project structure, models, views, URL routing, select_related/prefetch_related, signals vs save(), middleware, settings splitting, custom managers, management commands
92
87%
Does it follow best practices?
Impact
100%
1.63xAverage score across 5 eval scenarios
Passed
No known issues
{
"instruction": "Use URL namespacing with app_name, get_object_or_404 for lookups, and appropriate view types",
"relevant_when": "Agent creates Django views and URL configurations",
"context": "Django apps should set app_name in urls.py for namespaced URL reversal. Views should use get_object_or_404 for single-object lookups. Models with detail views should define get_absolute_url(). Use CBVs for standard CRUD and FBVs for custom flows.",
"sources": [
{
"type": "file",
"filename": "skills/django-best-practices/SKILL.md",
"tile": "tessl-labs/django-best-practices@0.2.0"
}
],
"checklist": [
{
"name": "app-name-in-urls",
"rule": "Agent sets app_name in every app's urls.py for URL namespacing",
"relevant_when": "Agent creates URL configuration for a Django app"
},
{
"name": "namespaced-url-reversal",
"rule": "Agent uses namespaced URL names (e.g., 'blog:post_detail') in reverse(), redirect(), and template {% url %} tags",
"relevant_when": "Agent references URLs in views, templates, or models"
},
{
"name": "get-object-or-404",
"rule": "Agent uses get_object_or_404() instead of Model.objects.get() for single-object lookups in views",
"relevant_when": "Agent retrieves a single object by primary key, slug, or other field in a view"
},
{
"name": "get-absolute-url",
"rule": "Agent defines get_absolute_url() on models that have a detail view, using reverse() with the namespaced URL",
"relevant_when": "Agent creates a model that will have a detail page"
}
]
}evals
scenario-1
scenario-2
scenario-3
scenario-4
scenario-5
skills
django-best-practices
verifiers