Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

"database.Pessoas.findALL is not a function"

quando eu dou o get no Postman aparece a seguinte mensagem "Cannot read properties of undefined (reading 'findALL')"

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

O meu arquivo PessoaController.js esta da seguinte maneira:

const database = require('../models');


class PessoaController {
    static async pegaTodasAsPessoas(req,res) {
        try {
            const todasAsPessoas = await database.Pessoas.findALL()
            return res.status(200).json(todasAsPessoas)
        } catch (error) {
            return res.status(500).json(error.message)
        }
    }
}

module.exports = PessoaController

e o arquivo PessoasRouter.js:

'use strict';
const {
  Model
} = require('sequelize');
module.exports = (sequelize, DataTypes) => {
  class Pessoas extends Model {
    /**
     * Helper method for defining associations.
     * This method is not a part of Sequelize lifecycle.
     * The `models/index` file will call this method automatically.
     */
    static associate(models) {
      // define association here
    }
  }
  Pessoas.init({
    nome: DataTypes.STRING,
    ativo: DataTypes.BOOLEAN,
    email: DataTypes.STRING,
    role: DataTypes.STRING
  }, {
    sequelize,
    modelName: 'Pessoas',
  });
  return Pessoas;
};

Acho que esse erro está acontecendo pela possível diferença de versão do sequelize, espero conseguir ajuda com esse erro pois tentei solucionar e não consegui resultados, espero que não seja um dúvida boba :D

eu subi os arquivos em um repositíorio no github para facilitar: https://github.com/Pedrowilliamss/Orm-Sequelize

2 respostas
solução!

Experimente escrever desta forma findAll (com apenas o A maiúsculo).

O Javascript é case-sensitive. Isto significa que ele distingue letras minúsculas das maiúsculas nos identificadores usados no código.

Então findAll não é igual a findALL.

Realmente, sabia que poderia ser algo bobo, muito obrigado!