我正在使用symfony mongoDB学说。
我有这样的文件:
namespace AppBundle\Document;
use Doctrine\ODM\MongoDB\Mapping\Annotations as MongoDB;
/**
* Class RateLimit
*
* @MongoDB\Document(collection="rate_limits", repositoryClass="AppBundle\Repository\RateLimitRepository")
*/
class RateLimit
{
/**
* @var int $id
*
* @MongoDB\Id()
*/
private $id;
/**
* @var int $requests
*
* @MongoDB\Field(type="integer")
*/
private $requests;
/**
* @var string $ip
*
* @MongoDB\Field(type="integer")
*/
private $ip;
// and more code
这是存储库代码:
public function save(RateLimit $limit)
{
$this->dm->persist($limit);
$this->dm->flush($limit);
}
当我尝试保存此文档时,不会将其插入rate_limits
集合中。我可以看到探查器:
db.tags.find({ "ip": "127.0.0.1" }).limit(1);
db.tags.insert({ "0000000051b4e83e0000000026f8bb13": { "_id": ObjectId("5c20ff7ce155c42b626a6edc"), "requests": 1, "timeout": 1545666488 } });
这是正确的查询,但此处的集合必须为rate_limits
。
为什么集合是tags
?
我做错了什么?