Symfony 4/MongoDB/Docker несколько записей при сохранении данных

Я использую Symfony 4 и MongoDB с докером, и я хочу сохранить новый документ (только один) в своей базе данных, но вставлено несколько записей.

.env файл:

PROJECT_DIR=/var/www/movies
APACHE_PORT=8080
PHP_PORT=9000
MONGODB_USER=test
MONGODB_PASSWORD=test
MONGODB_HOST=mongo
MONGODB_PORT=27017
MONGODB_DB=movies

MONGODB_URL=mongodb://${MONGODB_HOST}:${MONGODB_PORT}

доктрина_mongodb.yaml:

doctrine_mongodb:
    auto_generate_proxy_classes: true
    auto_generate_hydrator_classes: true
    connections:
        default:
            server: '%env(resolve:MONGODB_URL)%'
            options:
                username: '%env(resolve:MONGODB_USER)%'
                password: '%env(resolve:MONGODB_PASSWORD)%'
    default_database: '%env(resolve:MONGODB_DB)%'
    document_managers:
        default:
            auto_mapping: true
            mappings:
                App:
                    is_bundle: false
                    type: annotation
                    dir: '%kernel.project_dir%/src/Document'
                    prefix: 'App\Document'
                    alias: App

Функция индекса контроллера:

 /**
     * @Route("/", name = "base")
     */
    public function index(DocumentManager $dm)
    {
        $movie = new Movie();
        $movie->setTitle("Test");
        $dm->persist($movie);
        $dm->flush();

        return $this->render('base/index.html.twig');
    }

Итак, в чем ошибка вашего текущего решения?

atline 08.07.2019 01:27

Возможно, вы обновляете страницу несколько раз. В этом случае вы будете вставлять объект фильма при каждом обновлении страницы.

ASSILI Taher 08.07.2019 13:47

В моем профилировщике у меня есть только одна вставка, но в моей базе данных у меня есть две вставленные строки. И я пробовал также не обновлять страницу после удаления всех данных, у меня та же проблема.

as-dev-symfony 08.07.2019 18:55
Использование JavaScript и MongoDB
Использование JavaScript и MongoDB
Сегодня я собираюсь вкратце рассказать о прототипах в JavaScript, а также представить и объяснить вам работу с базой данных MongoDB.
0
3
90
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Наконец, я решил проблему. Я прокомментировал следующую строку, которая висела на моем base.html.twig, которая снова вызывала локальный хост.

{# <link rel='stylesheet' id='quick-preset-css'  href='{{ asset('') }}' type='text/css' media='all' />#}

Другие вопросы по теме