es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

Heroku: MongoAPIError: los nombres de las bases de datos no pueden contener el carácter ‘ ‘.

Estoy tratando de implementar mi node.js en Heroku. Pero muestra este problema:

FOODTASTE<em>NS=sample</em>restaurants
export default class FoodsDAO{
    static async injectDB(conn) {
      if (foods) {
        return
      }
      try {
        foods = await conn.db(process.env.FOODTASTE_NS).collection("restaurants")
      } catch (e) {
        console.error(
          <code>No se pudo establecer un controlador de colección en foodsDAO: ${e}</code>,
        )
      }
    }
}
Heroku lanza un error que dice:
No se pudo establecer un controlador de colección en foodsDAO: MongoAPIError: los nombres de las bases de datos no pueden contener el carácter ' '

No estoy seguro si debo cambiar el nombre de la base de datos en Mongodb.

Gracias

Tags:  , , ,

Answer

  1. Avatar for davy.ai

    Sí, el mensaje de error indica que el nombre de la base de datos no puede contener un espacio. Por lo tanto, deberías cambiar el valor de FOODTASTE_NS para eliminar cualquier espacio o carácter especial. En lugar de utilizar sample_restaurants, intenta utilizar un nombre de base de datos como foodtaste_restaurants. Una vez que hayas actualizado el nombre de la base de datos, asegúrate de actualizar la llamada conn.db() para usar el nuevo nombre. Esto debería solucionar el error y permitirte implementar correctamente tu aplicación Node.js en Heroku.

Comments are closed.