php - 不可能在Symfony2中加載燈具“無法找到任何要加載的燈具”




doctrine osx-mountain-lion (2)

看看DoctrineFixturesBundle文檔

您的數據夾具類需要實現OrderedFixtureInterface以便按照預先設置的順序加載。

然後,您可以使用$this->addReference('ref-name', $variable)設置引用,並使用$this->getReference('ref-name')引用另一個fixture中$this->getReference('ref-name')

我的猜測,為什麼它似乎在你的Linux機器上工作是因為固定程序是以不同的順序加載。

我拼命地試圖加載到我的數據庫的教義裝置。 當我調用全局cli加載函數時,一開始並沒有看起來不好:

> purging database
> loading [1] namespace_of_my_first_fixture_file
> loading [2] namespace_of_my_second_fixture_file
...

但是當它試圖從以前裝載的燈具(錯誤的索引)中重新使用一個對象的時候,它在這個過程的中間就失敗了:

[ErrorException]                                                                                                                                                          
Notice: Undefined index: my_object_index in /Users/Swop/project/vendor/doctrine/data-fixtures/lib/Doctrine/Common/DataFixtures/ReferenceRepository.php line 145

我看著數據庫,沒有插入任何表。 如果我嘗試只加載第一個燈具(這似乎是根據上面的粘貼加載),我有一個錯誤:

[InvalidArgumentException]                                          
Could not find any fixtures to load in:                             

- src/MyOrg/MyBundleBundle/DataFixtures/ORM/MyFirstFixtureFileData.php

順便說一句,我只是用自編的PHP 5.4實例在我的MacOS X(Mountain Lion)上運行它。

裝載數據加載在我的Linux機器上運行良好。


我無法在文檔中找到一個很好的例子,最後發現這是有效的。 只需使用文件夾位置,不要指定夾具文件。

doctrine:fixtures:load --fixtures=src/MyOrg/MyBundleBundle/DataFixtures/ORM --append






fixtures