最簡練有效的catalyst的action總結

bulletming發表於2019-07-10

~zarquon/Catalyst-Manual-5.7013/lib/Catalyst/Manual/Tutorial/Authentication.pod

在上邊的連結裡邊有對catalyst的action最簡練有效的總結,如下:

Note: Catalyst provides a number of different types of actions, such as Local, Regex, Private and the new Path. You should refer to for a more detailed explanation, but the following bullet points provide a quick introduction:

  • The majority of application have traditionally used Local actions for items that respond to user requests and Private actions for those that do not directly respond to user input.
  • Newer Catalyst applications tend to use Path actions and the Args attribute because of their power and flexibility. You can specify the path to match relative to the namespace of the current module as an argument to Path. For example Path('list') in lib/MyApp/Controller/Books.pm would match on the URL but Path('/list') would match on .
  • Automatic "chaining" of actions by the dispatcher is a powerful feature that allows multiple methods to handle a single URL. See for more information on chained actions.
  • There are five types of build-in Private actions: begin, end, default, index, and auto.
  • With begin, end, default, index private actions, only the most specific action of each type will be called. For example, if you define a begin action in your controller it will override a begin action in your application/root controller -- only the action in your controller will be called.
  • Unlike the other actions where only a single method is called for each request, every auto action along the chain of namespaces will be called. Each auto action will be called from the application/root controller down through the most specific class.

By placing the authentication enforcement code inside the auto method of lib/MyApp/Controller/Root.pm (or lib/MyApp.pm), it will be called for every request that is received by the entire application.

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/82392/viewspace-467905/,如需轉載,請註明出處,否則將追究法律責任。

相關文章