Я использую Symfony mongoDB Doctrine.
У меня есть такой документ:
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
?Что я делаю не так?