A _show
function is meant to transform a single document, while a _list
function is meant to transform the results of a view.
Both of them are meant to take the data within your document(s) and transform them into some other format. For example, you can render as HTML, XML or any other format you specify via the content-type
header. By doing this on the database itself, you can reduce some of the work your application layer needs to perform.
Also, there are ways to use _list
functions to do additional filtering and transformation to view results, allowing for a lot more flexibility than a typical view.