2014-01-09 88 views
6

我有一些問題使用教條mongodb食譜在http://symfony.com/doc/current/bundles/DoctrineMongoDBBundle/index.html整合mongodb與Symfony(版本2.5.0-DEV)。ClassNotFoundException:試圖從...(持續)加載類「Mongo」symfony2

一切都好,直到'持久對象到MongoDB'階段。當我添加行「$dm->persist($script);」,什麼也沒有發生到我的遠程數據庫,我得到的錯誤信息:

ClassNotFoundException的:試圖從在/ var /網絡/的Symfony /供應商的全局命名空間加載類「蒙哥」/doctrine/mongodb/lib/Doctrine/MongoDB/Connection.php第283行。你忘記了這個類的使用聲明嗎?

但是,如果沒有持續的行,腳本解析沒有錯誤(但遠程數據庫沒有任何反應)。

這是特別針對我的Symfony版本(2.5.0),是否有解決方法?我在下面粘貼了我的整個腳本,包括使用語句。任何幫助,將不勝感激 :)。

namespace Atlas\MpBundle\Controller; 
use Atlas\MpBundle\Document\Scripts; 
use Symfony\Component\HttpFoundation\Response; 
use Symfony\Component\HttpFoundation\JsonResponse; 
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Template; 
use Symfony\Bundle\FrameworkBundle\Controller\Controller; 

class UserjsonController extends Controller 
{ 
    public function showuserjsonAction() 
    { 
     $script = new Scripts(); 
     $script->setName('kingstest'); 
     $script->setDescription('just a desc test'); 
     $script->setGroup('SMS'); 

     $dm = $this->get('doctrine_mongodb')->getManager(); 
     $dm->persist($script); 
     $dm->flush(); 

     return new Response('Created New Document in scripts with script id '.$script->getId()); 
    } 
} 
+1

您是否安裝了MongoDB PHP擴展? phpinfo()輸出會告訴你。 – Derick

+0

向我們展示您將「doctrine_mongodb」定義爲服務的配置,因爲我認爲問題在於 – gprusiiski

+0

感謝您的答覆。 Derick,當我做php -m(使用cli)時,我可以看到mongo作爲其中一個模塊。 @gprusiiski,我doctrine_mongodb低於: #MongoDB配置 doctrine_mongodb: 連接: 默認: 服務器:MongoDB的://192.168.101.188:27017 選項:{} DEFAULT_DATABASE:mp_development document_managers: 默認: auto_mapping:true – Kingsley

回答

3

謝謝你們。現在工作。 擴展mongo.so必須在php.ini中加載,我編輯了錯誤的php.ini文件。添加extension=mongo.so到位於/etc/php5/apache2/的php.ini,現在它可以工作:) 希望這可以幫助未來的某個人。

相關問題