Проблема с созданием данных в базу данных sqlite с использованием typeorm ionic 3 - PullRequest
0 голосов
/ 09 октября 2018

Я пытаюсь отправить данные в объекты, используя typeorm, и получаю эту ошибку:

Ошибка: ошибка (в обещании): AlreadyHasActiveConnectionError: Невозможно создать новое соединение с именем "default",потому что соединение с таким именем уже существует, и теперь у него есть активный сеанс соединения.

Я подключаюсь к БД в app.component.ts, и она отлично работает, затем в другой странице TS файл яя пытаюсь опубликовать данные из формы на объект, и вот в чем моя проблема, он постоянно говорит мне, что у него уже есть активное соединение, так что я должен делать, чтобы отправлять данные в БД с помощью typeorm?

TS:

import { createConnection } from "ionic-orm";

onAddEquipment() {
let options: ConnectionOptions = {
  autoSchemaSync: true,
  driver: {
    type: "websql",
    database: "bexel"
  },
  entities: [
    Equipments
  ]
  }
   createConnection(options).then(async connection => {
   let equipment = new Equipments();
   equipment = this.equipment;
  await connection.entityManager.persist(equipment);
  console.log("equipment has been saved");
});
}

Я следовал этой документации.

Как мы можем написать правильное утверждение?Обратите внимание, что он работает без typeorm с нативными sqlite-запросами, поэтому никаких проблем с формой нет, просто я не знаю, как правильно написать оператор.

1 Ответ

0 голосов
/ 09 октября 2018

Для тех, кто страдает от этой проблемы, я добавил свойство name к объекту параметров, и оно заработало:

 let options: ConnectionOptions = {
  autoSchemaSync: true,
  name: 'postEquipments',
  driver: {
    type: "websql",
    database: "bexel"
  },
  entities: [
    Equipments
  ]
  }
...