创建扩展程序不起作用:表不存在

时间:2015-06-10 16:55:27

标签: typo3-6.2.x

我是typo3 CMS的新手,我现在正在创建一个新的扩展程序但是当我尝试从存储库执行查询时,我总是遇到以下错误。

  

1247602160:表' hr.tx_hr_domain_model_job'不存在

这是我的控制器

<?php
namespace Hr\Hr\Controller;

class HrController extends \TYPO3\CMS\Extbase\Mvc\Controller\ActionController
{

    protected $jobsRepository;
    protected $objectManager;

    public function initializeAction()
    {
        parent::initializeAction();

        $this->objectManager  = \TYPO3\CMS\Core\Utility\GeneralUtility::makeInstance('TYPO3\\CMS\\Extbase\\Object\\ObjectManager');
        $this->jobsRepository = $this->objectManager->get('Hr\\Hr\\Domain\\Repository\\JobRepository');
    }

    /**
     * jobs list
     *
     * @return void
     */
    public function listAction()
    {
        $this->view->assign('jobs', $this->jobsRepository->findAll());
    }

}

这是作业存储库类

<?php

namespace Hr\Hr\Domain\Repository;

class JobRepository extends \TYPO3\CMS\Extbase\Persistence\Repository
{

}

这是ext_tables.sql文件的内容

#
# Table structure for table 'tx_hr_job'
#

CREATE TABLE IF NOT EXISTS `tx_hr_job` (
  `JobId` int(10) NOT NULL,
  `Kunde` varchar(255) NOT NULL,
  `Titel` varchar(255) NOT NULL,
  `Ort` varchar(255) NOT NULL,
  `Volltext` text NOT NULL,
  `Bundesland` varchar(255) NOT NULL,
  `Region` varchar(255) NOT NULL,
  `Branche` varchar(255) NOT NULL,
  `Berufsgruppe` varchar(255) NOT NULL,
  `Stellenart` varchar(255) NOT NULL,
  `Datum` date NOT NULL,
    PRIMARY KEY (`JobId`)
);

任何帮助?

1 个答案:

答案 0 :(得分:0)

按照惯例,表名应为tx_hr_domain_model_job,您也可以使用表映射,但这可能很棘手。

使用extension_builder来启动你的分机 - 它是创建基本模型的绝佳工具,你可以通过拖放 - 也可以关系等来实现。

更重要的是,它将创建所有必需的代码,模型,存储库TCA配置等,这样您就可以看到最有效的方法。