# QWeb Template Best Practices - Odoo 18 **Reference**: website_sale_aplicoop template error fix **Odoo Version**: 18.0+ **Created**: 2026-02-16 --- ## Table of Contents 1. [Attribute Expression Best Practices](#attribute-expression-best-practices) 2. [None/Null Safety Patterns](#nonenull-safety-patterns) 3. [Variable Computation Patterns](#variable-computation-patterns) 4. [Common Pitfalls](#common-pitfalls) 5. [Real-World Examples](#real-world-examples) --- ## Attribute Expression Best Practices ### The Problem: t-attf-* Operator Issues **Issue**: QWeb's `t-attf-*` (template attribute) directives don't handle chained `or` operators well when expressions can evaluate to None. ```xml