0

我收到奇怪的错误。请帮忙

我正在创建名为“Advinvite”的自定义模块

我创建了表:“engine4_advinvite_matchinvites”

我创建了 DbTable:“Advinvite_Model_DbTable_Matchinvites”

我已经创建了 DbTable 的 Row 类模型:“Advinvite_Model_Matchinvite”并且表中的主键是“matchinvite_id”

我还创建了 Api:“Advinvite_Api_Core”

主要部分我还在模块设置文件夹的 manifest.php 文件中注册了该项目,例如:

// Items ---------------------------------------------------------------------
  'items' => array(
    'advinvite_matchinvite',
  )

现在关于错误:

我想使用时收到错误“未知项目类型:advinvite_matchinvite”

Engine:Api:_()->getItem('advinvite_matchinvite',its_Identity)

我也在下面发送清单文件代码。请你帮我检查一下并帮助我。这是我生命中的第一次(奇怪的错误),我在过去的三四天里试图解决这个问题。甚至我所做的一切都是正确的为什么会发生不理解。请帮我搭档。将不胜感激。

而且,如果您也可以帮助我解决此问题,则意味着路线也无法正常工作....不知道为什么会出现这两个错误

请帮帮我。

Manifest.php 代码:

<?php return array (
  'package' => 
  array (
    'type' => 'module',
    'name' => 'advinvite',
    'version' => '4.0.0',
    'path' => 'application/modules/Advinvite',
    'title' => 'Advanced Invites',
    'description' => 'This will invite the users for matches and nets',
    'author' => 'Gitesh Dang',
    'callback' => 
    array (
      'class' => 'Engine_Package_Installer_Module',
    ),
    'actions' => 
    array (
      0 => 'install',
      1 => 'upgrade',
      2 => 'refresh',
      3 => 'enable',
      4 => 'disable',
    ),
    'directories' => 
    array (
      0 => 'application/modules/Advinvite',
    ),
    'files' => 
    array (
      0 => 'application/languages/en/advinvite.csv',
    ),
    // Items ---------------------------------------------------------------------
  'items' => array(
    'advinvite_matchinvite',
  ),
  // Routes --------------------------------------------------------------------
  'routes' => array(
    'advinvite_general' => array(
      'route' => 'invites/:action/*',
      'defaults' => array(
        'module' => 'advinvite',
        'controller' => 'index',
        'action' => '(match|matchview)',
      ),
      'reqs' => array(
        'action' => '\D+',
      )
    ),
  )
  ),
); ?>

等待正面回应。亲切的问候

4

1 回答 1

0

大佬,已经修复了 问题很小:)

项目在包数组中注册,它应该在包数组之外注册。包数组应该只对文件数组关闭。

更正的清单文件:

    <?php return array (
      'package' => 
      array (
        'type' => 'module',
        'name' => 'advinvite',
        'version' => '4.0.0',
        'path' => 'application/modules/Advinvite',
        'title' => 'Advanced Invites',
        'description' => 'This will invite the users for matches and nets',
        'author' => 'Gitesh Dang',
        'callback' => 
        array (
          'class' => 'Engine_Package_Installer_Module',
        ),
        'actions' => 
        array (
          0 => 'install',
          1 => 'upgrade',
          2 => 'refresh',
          3 => 'enable',
          4 => 'disable',
        ),
        'directories' => 
        array (
          0 => 'application/modules/Advinvite',
        ),
        'files' => 
        array (
          0 => 'application/languages/en/advinvite.csv',
        ),
      ),
 // Items ---------------------------------------------------------------------
      'items' => array(
        'advinvite_matchinvite',
      ),
      // Routes --------------------------------------------------------------------
      'routes' => array(
        'advinvite_general' => array(
          'route' => 'invites/:action/*',
          'defaults' => array(
            'module' => 'advinvite',
            'controller' => 'index',
            'action' => '(match|matchview)',
          ),
          'reqs' => array(
            'action' => '\D+',
          )
        ),
      )
    ); ?>

干杯!!:)

于 2012-08-11T08:07:40.290 回答