Magentoがこのファイルを私のリソースモデルとして探しているのはなぜですか?'開くことができませんでしたstream...No そのようなファイル'

magento.stackexchange https://magento.stackexchange.com//questions/45054

  •  12-12-2019
  •  | 
  •  

質問

私はMagentoで初めてモデルを作成しようとしています-リソースモデルは Mygroup_Mymodule_Model_Resource_Link

私が使用したモデルエイリアスは次のとおりです mygroup_mymodule/link

私は電話しようとしています $myVar = Mage::getModel('mygroup_mymodule/link') しかし、私はこのエラーを取得しています:

Warning: include(Mage/Mygroup/Mymodule/Resource/Model/Link.php): failed to open stream: No such file or directory in /[root]/lib/Varien/Autoload.php on line 93

これは本当です:そこに そこにファイルがないか、または中にありません app/code/local/Mygroup/Mymodule/Resource/Model/Link.php, 、しかし、Magentoがあるべきだと思う理由はわかりません。

私のフォルダ構造は:

...
- Model/
    - Link.php
    - Resource/
        - Link.php
        - Link/
            - Collection.php
...

app/code/local/Mygroup/Mymodule/etc/config.xml:

<?xml version="1.0" encoding="UTF-8"?>
<config>
    <modules>
        <Mygroup_Mymodule>
            <version>0.0.6</version>
        </Mygroup_Mymodule>
    </modules>

    <frontend>
        <routers>
            <downloadable>
                <use>standard</use>
                <args>
                    <modules>
                        <Mygroup_Mymodule before="Mage_Downloadable">Mygroup_Mymodule</Mygroup_Mymodule>
                    </modules>
                </args>
            </downloadable>
        </routers>
    </frontend>

    <global>
        <helpers>
            <downloadable>
                <rewrite>
                    <download>Mygroup_Mymodule_Helper_Download</download>
                </rewrite>
            </downloadable>
        </helpers>

        <models>

            <mygroup_mymodule>

                <class>Mygroup_Mymodule_Model</class>

                <resourceModel>mygroup_mymodule_resource</resourceModel>

            </mygroup_mymodule>

            <mygroup_mymodule_resource>

                <entities>

                    <link>

                        <table>mygroup_mymodule_link</table>

                    </link>

                </entities>

            </mygroup_mymodule_resource>

        </models>

        <resources>

            <mygroup_mymodule_setup>

                <setup>

                    <module>Mygroup_Mymodule</module>

                    <class>Mage_Core_Model_Resource_Setup</class>

                </setup>

                <connection>
                    <use>core_setup</use>
                </connection>

            </mygroup_mymodule_setup>

        </resources>


    </global>
</config>

app/code/local/Mygroup/Mymodule/Model/Link.php:

<?php
class Mygroup_Mymodule_Model_Link extends Mage_Core_Model_Abstract
{

    protected function _construct()
    {
        $this->_init('mygroup_mymodule/link');
    }
    ...

app/code/local/Mygroup/Mymodule/Model/Resource/Link.php:

<?php
class Mygroup_Mymodule_Model_Resource_Link
    extends Mage_Core_Model_Resource_Db_Abstract
{
    protected function _construct()
    {
        $this->_init('mygroup_mymodule/link', 'entity_id');
    }
}

app/code/local/Mygroup/Mymodule/Model/Resource/Link/Collection.php:

<?php
class Mygroup_Mymodule_Model_Resource_Link_Collection
    extends Mage_Core_Model_Resource_Db_Collection_Abstract
{
    protected function _construct()
    {
        parent::_construct();

        $this->_init(
            'mygroup_mymodule/link',
            'mygroup_mymodule/link'
        );
    }
}

モジュールにはヘルパーとコントローラーもあります(設定ファイルで見ることができます)が、ここでは関連していないと思います。

どんな助けにも感謝します!

私はCE1.9.0.1を使用しています

役に立ちましたか?

解決

あなたが行方不明になっているかのように見えます class リソースモデルの設定での定義:

        <mygroup_mymodule_resource>
            <class>Mygroup_Mymodule_Model_Resource</class>
            <entities>
                <link>
                    <table>mygroup_mymodule_link</table>
                </link>
            </entities>
        </mygroup_mymodule_resource>
ライセンス: CC-BY-SA帰属
所属していません magento.stackexchange
scroll top