- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我正在尝试使用 DoctrineMongoDBBundle,但它给了我这个错误:
Attempted to load class "ObjectID" from namespace "MongoDB\BSON". Did you forget a "use" statement for another namespace?
我找遍了某个原因,但找不到为什么会出现此错误。
我的 mongodb 安装正常,mongodb 状态告诉我它处于事件状态。我想我正确地设置了类...等等。错误可能来自哪里?
堆栈跟踪:
Symfony\Component\Debug\Exception\ClassNotFoundException: Attempted to load class "ObjectID" from namespace "MongoDB\BSON". Did you forget a "use" statement for another namespace?
at vendor/alcaeus/mongo-php-adapter/lib/Mongo/MongoId.php:224
at MongoId->createObjectID(null) (vendor/alcaeus/mongo-php-adapter/lib/Mongo/MongoId.php:41)
at MongoId->__construct() (vendor/doctrine/mongodb-odm/lib/Doctrine/ODM/MongoDB/Id/AutoGenerator.php:34)
at Doctrine\ODM\MongoDB\Id\AutoGenerator->generate(object(DocumentManager), object(Product)) (vendor/doctrine/mongodb-odm/lib/Doctrine/ODM/MongoDB/UnitOfWork.php:1107)
at Doctrine\ODM\MongoDB\UnitOfWork->persistNew(object(ClassMetadata), object(Product)) (vendor/doctrine/mongodb-odm/lib/Doctrine/ODM/MongoDB/UnitOfWork.php:1710)
at Doctrine\ODM\MongoDB\UnitOfWork->doPersist(object(Product), array('000000002ed55d6b00000000057952ca' => object(Product))) (vendor/doctrine/mongodb-odm/lib/Doctrine/ODM/MongoDB/UnitOfWork.php:1674)
at Doctrine\ODM\MongoDB\UnitOfWork->persist(object(Product)) (vendor/doctrine/mongodb-odm/lib/Doctrine/ODM/MongoDB/DocumentManager.php:412)
at Doctrine\ODM\MongoDB\DocumentManager->persist(object(Product)) (src/Acme/StoreBundle/Controller/DefaultController.php:30)
at Acme\StoreBundle\Controller\DefaultController->createAction()
at call_user_func_array(array(object(DefaultController), 'createAction'), array()) (vendor/symfony/symfony/src/Symfony/Component/HttpKernel/HttpKernel.php:153) at Symfony\Component\HttpKernel\HttpKernel->handleRaw(object(Request), 1) (vendor/symfony/symfony/src/Symfony/Component/HttpKernel/HttpKernel.php:68)
at Symfony\Component\HttpKernel\HttpKernel->handle(object(Request), 1, true) (vendor/symfony/symfony/src/Symfony/Component/HttpKernel/Kernel.php:169)
at Symfony\Component\HttpKernel\Kernel->handle(object(Request)) (web/app_dev.php:29)
at require('/var/www/html/geoservicesgrandnancy/web/app_dev.php') (vendor/symfony/symfony/src/Symfony/Bundle/WebServerBundle/Resources/router.php:42)
php --ri mongodb | grep version
输出:
MongoDB extension version => 1.3.2, libbson bundled version => 1.8.1, libmongoc bundled version => 1.8.1
演示的简单示例:
<?php
namespace Acme\StoreBundle\Controller;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;
use Symfony\Component\HttpFoundation\Response;
use MongoDB\BSON\ObjectID; //Adding this or not doesn't change anything
class DefaultController extends Controller
{
/**
* @Route("/")
*/
public function indexAction()
{
var_dump(new MongoDB\BSON\ObjectID); die();
return $this->render('AcmeStoreBundle:Default:index.html.twig');
}
}
并且 composer.json 需要得到:
"require": {
"php": ">=5.5.9",
"alcaeus/mongo-php-adapter": "^1.1",
"doctrine/doctrine-bundle": "^1.6",
"doctrine/mongodb-odm": "^1.2",
"doctrine/mongodb-odm-bundle": "^3.4",
"doctrine/orm": "^2.5",
"incenteev/composer-parameter-handler": "^2.0",
"sensio/distribution-bundle": "^5.0.19",
"sensio/framework-extra-bundle": "^3.0.2",
"symfony/monolog-bundle": "^3.1.0",
"symfony/polyfill-apcu": "^1.0",
"symfony/swiftmailer-bundle": "^2.3.10",
"symfony/symfony": "3.3.*",
"twig/twig": "^1.0||^2.0"
},
最佳答案
您好,您需要将“alcaeus/mongo-php-adapter”:“^1.1”作为您的包的一部分,并将预期的 mongo 扩展作为故障解决方案公开,例如
"provide": {
"ext-mongo": "1.6.12"
},
一个完整的 Composer 文件可能是这样的
{
"require": {
"php": "^7.1.3",
"ext-mongodb": ">=1.1.2",
"alcaeus/mongo-php-adapter": "^1.1",
"doctrine/mongodb-odm-bundle": "^3.3",
...
},
"provide": {
"ext-mongo": "1.6.12"
}
...
}
关于mongodb - 试图从命名空间 "ObjectID"加载类 "MongoDB\BSON",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47354109/
我是 C++ 的新手,我在使用这段代码时遇到了问题: string output_date(int day, int month, int year){ string date; if
所以我这样做了 tar cvzf test.zip FP 为了创建目录 FP 的 zip 但是,它会列出 zip 中的目录 FP/ FP/php/ FP/php/pdf/ FP/php/docs/ F
我正在尝试在 Swift、Xcode 7.3(所以是 Swift 2.2)中创建一个通用类,但我似乎无法让它通过编译器: protocol Struct1Protocol { } struct Str
我的测试用例是这样的: class FooTest extends PHPUnit_Framework_TestCase { /** @covers MyClass::bar */ f
我正在尝试将brew install wine作为使electron-builder工作的一步。但是我所能得到的只是以下响应: ==> Installing dependencies for wine
我这样做: string[,] string1 = {{"one", "0"},{"Two", "5"},{"Three","1"}}; int b = 0; for(int i = 0; i <=
我正在尝试使用 SetWindowsHookEx 键盘 Hook Notepad.exe。 如您所见,工作线程正在将其 ASCII 代码(即 wParam)发送到指定的服务器。 UINT WINAPI
我正在尝试将 ListView 实现到我的 Fragment 中,但无论我尝试什么,我都会得到一个 NullPointerException。我检查对象是否为 null 并记录是否为 null,看起来
我尝试在一行中对齐两个 div。使用 float left 属性,一切顺利。但是当我在 div 中使用图像时,它开始产生问题。 所以这是我的示例代码:- Some headi
我目前正在使用此代码来获取图像的灰度图像表示并以 (512, 370, 1) 的格式表示它大批。 img_instance = cv2.imread(df.iloc[i][x_col]) / 255.
总结 我正在创建一个简单的应用程序,它允许用户选择一个包含顶级窗口的进程。用户首先键入 native DLL(而非托管 DLL)的路径。然后用户键入将在 Hook 过程中调用的方法的名称。该方法不得返
我是一名优秀的程序员,十分优秀!