Module: Roda::RodaPlugins::NotFound

Defined in:
lib/roda/plugins/not_found.rb

Overview

The not_found plugin adds a not_found class method which sets a block that is called whenever a 404 response with an empty body would be returned. The usual use case for this is the desire for nice error pages if the page is not found.

You can provide the block with the plugin call:

plugin :not_found do
  "Where did it go?"
end

Or later via a separate call to not_found:

plugin :not_found

not_found do
  "Where did it go?"
end

Before not_found is called, any existing headers on the response will be cleared. So if you want to be sure the headers are set even in a not_found block, you need to reset them in the not_found block.

This plugin is now a wrapper around the status_handler plugin and still exists mainly for backward compatibility.

Defined Under Namespace

Modules: ClassMethods

Class Method Summary collapse

Class Method Details

.configure(app, &block) ⇒ Object

If a block is given, install the block as the not_found handler.



39
40
41
42
43
# File 'lib/roda/plugins/not_found.rb', line 39

def self.configure(app, &block)
  if block
    app.not_found(&block)
  end
end

.load_dependencies(app, &_) ⇒ Object

Require the status_handler plugin



34
35
36
# File 'lib/roda/plugins/not_found.rb', line 34

def self.load_dependencies(app, &_)
  app.plugin :status_handler
end