mirror of
				https://github.com/django/django.git
				synced 2025-10-31 01:25:32 +00:00 
			
		
		
		
	[1.6.x] Fixed #22412 -- More nuanced advice re template filters and exceptions.
Thanks Tim for review.
Backport of 7e3834adc9 from master
			
			
This commit is contained in:
		| @@ -87,9 +87,11 @@ Custom filters are just Python functions that take one or two arguments: | ||||
| For example, in the filter ``{{ var|foo:"bar" }}``, the filter ``foo`` would be | ||||
| passed the variable ``var`` and the argument ``"bar"``. | ||||
|  | ||||
| Filter functions should always return something. They shouldn't raise | ||||
| exceptions. They should fail silently. In case of error, they should return | ||||
| either the original input or an empty string -- whichever makes more sense. | ||||
| Usually any exception raised from a template filter will be exposed as a server | ||||
| error. Thus, filter functions should avoid raising exceptions if there is a | ||||
| reasonable fallback value to return. In case of input that represents a clear | ||||
| bug in a template, raising an exception may still be better than silent failure | ||||
| which hides the bug. | ||||
|  | ||||
| Here's an example filter definition: | ||||
|  | ||||
|   | ||||
		Reference in New Issue
	
	Block a user