【问题标题】:Can't retrieve entity config Magento无法检索实体配置 Magento
【发布时间】:2016-03-10 10:24:51
【问题描述】:

我一直在跟踪唯一一个我不知道的错误,因为它显示了我多久。

下面是我的 config.xml 文件

<?xml version="1.0"?>

<config>
    <modules>
        <Maven_Questionanswer>
            <version>1.0.1</version>
        </Maven_Questionanswer>
    </modules>        
<global>
    <models>
                <questionanswer>
                    <class>Maven_Questionanswer_Model</class>
                    <resourceModel>questionanswer_resource</resourceModel>
                </questionanswer>
                <questionanswer_resource>
                    <class>Maven_Questionanswer_Model_Resource</class>
                    <entities>
                        <questionanswer>
                            <table>question</table>
                        </questionanswer>
                    </entities>
                </questionanswer_resource>
            </models>
            <resources>
                <questionanswer_setup>
                    <setup>
                        <module>Maven_Questionanswer</module>
                    </setup>
                    <connection>
                        <use>core_setup</use>
                    </connection>
                </questionanswer_setup>
                <questionanswer_write>
                    <connection>
                        <use>core_write</use>
                    </connection>
                </questionanswer_write>
                <questionanswer_read>
                    <connection>
                        <use>core_read</use>
                    </connection>
                </questionanswer_read>
            </resources>
    </global>
</config>

/app/code/local/Maven/Questionanswer/Model/Question.php

 <?php
    /**
    * 
    */

    class Maven_Questionanswer_Model_Question extends Mage_Core_Model_Abstract
    {
         public function _construct()
         {
             parent::_construct();
             $this->_init('questionanswer/question');
         }
    }

    ?>

/app/code/local/Maven/Questionanswer/Model/Resource/Question.php

<?php
class Maven_Questionanswer_Model_Resource_Question extends Mage_Core_Model_Resource_Db_Abstract
{
    /**
     * Initialize resource model
     *
     * @return void
     */
    public function _construct()
    {
        $this->_init('questionanswer/question', 'question_id');
    }
}
?>

/magento1.9.2/app/code/local/Maven/Questionanswer/Model/Resource/Question/Collection.php

<?php
/**
* 
*/
class Maven_Questionanswer_Model_Resource_Question_Collection extends Mage_Core_Model_Resource_Db_Collection_Abstract 
{

    protected function _construct()
    {
            $this->_init('questionanswer/question');
    }
}
?>

/app/code/local/Maven/Questionanswer/sql/questionanswer_setup/install-1.0.1.php



<?php

$installer = $this;
 $installer->startSetup();
 $table = $installer->getConnection()->newTable($installer->getTable('questionanswer/question'))
    ->addColumn('question_id', Varien_Db_Ddl_Table::TYPE_INTEGER, null, array(
        'unsigned' => true,
        'nullable' => false,
        'AUTO_INCREMENT'=>true,
        'primary' => true,
        'identity' => true,
        ), 'Question ID')
    ->addColumn('username', Varien_Db_Ddl_Table::TYPE_TEXT, null, array(
        'nullable' => false,
        ), 'Username')
    ->addColumn('email', Varien_Db_Ddl_Table::TYPE_TEXT, null, array(
        'nullable' => false,
        ), 'Email username')
    ->addColumn('question', Varien_Db_Ddl_Table::TYPE_TEXT, null, array(
        ), 'Question')
    ->addColumn('product_id', Varien_Db_Ddl_Table::TYPE_INTEGER, null, array(
        ), 'Product ID')
    ->addColumn('store_id', Varien_Db_Ddl_Table::TYPE_INTEGER, null, array(
        ), 'Store ID')
    ->addColumn('status', Varien_Db_Ddl_Table::TYPE_INTEGER, null, array(
        ), 'Status')
    ->setComment('questionanswer questionanswer/question entity table');
    $installer->getConnection()->createTable($table);

$installer->endSetup();
?>

我在哪里犯错了?我能理解。

【问题讨论】:

  • 我还在 config.xml 中更改了我的 questionanswer_question
    .. 我仍然收到此错误
  • 请告诉我们错误。
  • a:5:{i:0;s:185:"文件错误:"/home/vhost/_default/magento1.9.2/app/code/local/Maven/Questionanswer/sql/ questionanswer_setup/install-1.0.1.php" - 无法检索实体配置:questionanswer/question";i:1;s:1020:"#0 /home/vhost/_default/magento1.9.2/app/code/core /Mage/Core/Model/Resource/Setup.php(644): Mage::exception('Mage_Core', '文件错误: ...')
  • 我也试过给文件名 mysql4-install-1.0.1.php 但同样的错误

标签: php xml magento config


【解决方案1】:

您缺少资源设置文件。 这些行:

<resources>
    <questionanswer_setup>
        <setup>
            <module>Maven_Questionanswer</module>
        </setup>
        <connection>
            <use>core_setup</use>
        </connection>
    </questionanswer_setup>
        <questionanswer_write>
            <connection>
                <use>core_write</use>
            </connection>
        </questionanswer_write>
        <questionanswer_read>
            <connection>
                <use>core_read</use>
            </connection>
        </questionanswer_read>
 </resources>

应该是:

<resources>
    <questionanswer_setup>
        <setup>
            <module>Maven_Questionanswer</module>
            <class>Maven_Questionanswer_Model_Resource_Setup</class>
        </setup>
        <connection>
            <use>core_setup</use>
        </connection>
    </questionanswer_setup>
        <questionanswer_write>
            <connection>
                <use>core_write</use>
            </connection>
        </questionanswer_write>
        <questionanswer_read>
            <connection>
                <use>core_read</use>
            </connection>
        </questionanswer_read>
 </resources>

换行:

<class>Maven_Questionanswer_Model_Resource_Setup</class>

资源设置文件应该是这样的:

<?php

class Maven_Questionanswer_Model_Resource_Setup extends Mage_Core_Model_Resource_Setup {
}

希望对你有帮助

【讨论】:

    【解决方案2】:

    请尝试以下代码,

    <?php
    
    $installer = $this;
     $installer->startSetup();
     $table = $installer->getConnection()->newTable($installer->getTable('question'))
        ->addColumn('question_id', Varien_Db_Ddl_Table::TYPE_INTEGER, null, array(
            'unsigned' => true,
            'nullable' => false,
            'AUTO_INCREMENT'=>true,
            'primary' => true,
            'identity' => true,
            ), 'Question ID')
        ->addColumn('username', Varien_Db_Ddl_Table::TYPE_TEXT, null, array(
            'nullable' => false,
            ), 'Username')
        ->addColumn('email', Varien_Db_Ddl_Table::TYPE_TEXT, null, array(
            'nullable' => false,
            ), 'Email username')
        ->addColumn('question', Varien_Db_Ddl_Table::TYPE_TEXT, null, array(
            ), 'Question')
        ->addColumn('product_id', Varien_Db_Ddl_Table::TYPE_INTEGER, null, array(
            ), 'Product ID')
        ->addColumn('store_id', Varien_Db_Ddl_Table::TYPE_INTEGER, null, array(
            ), 'Store ID')
        ->addColumn('status', Varien_Db_Ddl_Table::TYPE_INTEGER, null, array(
            ), 'Status')
        ->setComment('questionanswer questionanswer/question entity table');
        $installer->getConnection()->createTable($table);
    
    $installer->endSetup();
    ?>

    【讨论】:

    • 只是为了更多地了解如何找到属于特定模块的表......我们也可以将其指定为“questionasnwer_question”,以便它可以被识别......你帮了我很多。 .谢谢
    猜你喜欢
    • 1970-01-01
    • 2016-05-24
    • 1970-01-01
    • 2016-09-25
    • 2012-06-13
    • 1970-01-01
    • 2019-01-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多