Wheels Debugging
Common Errors
”Missing argument name” Error
Cause: Mixed positional and named arguments
Solution: Use consistent argument style
❌ hasMany("comments", dependent="delete")
✅ hasMany(name="comments", dependent="delete")
”Can’t cast Object type [Query] to [Array]”
Cause: Using Array functions on queries
Solution: Use query methods
❌ ArrayLen(post.comments())
✅ post.comments().recordCount
”Association not found” Error
Cause: Association not properly defined or typo
Solution:
- Check model config() for association definition
- Verify association name matches
- Check model name spelling
”Table not found” Error
Cause: Migration not run or table name mismatch
Solution:
wheels dbmigrate latest
“Column not found” Error
Cause: Property doesn’t exist in database
Solution:
- Add column via migration
- Check property name spelling
- Verify case sensitivity
Debugging Tools
Enable Debug Output
// In config/settings.cfm
set(showDebugInformation=true);
set(showErrorInformation=true);
Inspect Variables
<cfdump var="#post#" label="Post Object">
<cfabort>
Check SQL Queries
// Wheels logs all SQL to debugging output
// Look for red SQL queries (errors)
Generated by: Wheels Debugging Skill v1.0