
Action pack splits the response to a requests into a controller part (performing the logic) and a view part (rendering a template). this two-step approach is known as an action, which will normally create, read, update, or delete (crud for short) some sort of model part (often backed by a database) before choosing either to render a template or redirecting to another action.
it eases web-request routing, handling, and response as a half-way front, half-way page controller. implemented with specific emphasis on enabling easy unit/integration testing that doesn't require a browser.