Kohana 3路线不匹配

时间:2012-03-14 22:12:56

标签: regex kohana kohana-3.2

您好我在匹配Kohana 3自定义路线时遇到问题,似乎每件事情都是正确的但URL与路线不匹配。以下是我的bootstrap.php文件中的设置:

   Kohana::init(array(
'base_url'   => '/basepath/',
    'index_file' => 'index.php'
  ));

  /**
  * Attach the file write to logging. Multiple writers are supported.
  */
  Kohana::$log->attach(new Log_File(APPPATH.'logs'));

  /**
  * Attach a file reader to config. Multiple readers are supported.
  */
   Kohana::$config->attach(new Config_File);

   /**
   * Enable modules. Modules are referenced by a relative or absolute path.
   */
   Kohana::modules(array(
'auth'       => MODPATH.'auth',       // Basic authentication
// 'cache'      => MODPATH.'cache',      // Caching with multiple backends
// 'codebench'  => MODPATH.'codebench',  // Benchmarking tool
'database'   => MODPATH.'database',   // Database access
'image'      => MODPATH.'image',      // Image manipulation
'orm'        => MODPATH.'orm',        // Object Relationship Mapping
// 'unittest'   => MODPATH.'unittest',   // Unit testing
'userguide'  => MODPATH.'userguide',  // User guide and API documentation
));


      /**
      * Set the routes. Each route must have a minimum of a name, a URI and a set of
      * defaults for the URI.
      */
    Route::set('default', '(<controller>(/<action>(/<id>)))')
->defaults(array(
    'controller' => 'welcome',
    'action'     => 'index',
));

    Route::set('category_images', 'cat/<category>', array('category'=>'[a-z\-_\.]+'))
->defaults(array(
    'controller' => 'categoryimages',
    'action'     => 'index',
));

     Route::set('user_images', '<username>/images(/<pageid>)', array('username'=>'[a-z\-_\.]+', 'pageid'=>'[1-9][0-9]*'))
->defaults(array(
    'controller' => 'userimages',
    'action'     => 'index',
));




     Route::set('dynamic_image', 'image/thumbnail/<size>/<id>/<image>', array('size'=>'s|m|z', 'id'=>'[0-9]+', 'image'=>'.+'))
->defaults(array(
    'controller' => 'image',
    'action' => 'thumbnail'
));

附件是错误消息:enter image description here

这是目标控制器,如果出现问题则显示命名约定:

<?php

class Controller_Categoryimages extends Controller_Template {

    public $template = 'template';
public $images_per_page = 15;

// show images of a user
    public function action_index() {
       //code here
     }

请告诉我们是否有人知道为什么它与网址不匹配。

先谢谢你们。

1 个答案:

答案 0 :(得分:1)

你的默认路线应该是最后的,因为它是一个全部。我建议你完全删除它。它目前首先匹配默认值,并尝试使用action sky加载Contoller_Cat类。