Giter Club home page Giter Club logo

Comments (23)

AllanFont3s avatar AllanFont3s commented on July 24, 2024 274

Eu resolvi da seguinte forma:
Fui no DBeaver, no banco de dados que eu criei, com o botão direito do mouse em cima do símbolo do Banco de dados existe a opção create, acompanhando as opções que se abrem tem a opção extension, uma das últimas opçoes lá dentro é a tão procurada uuuid-ossp, pronto, é só habilitar essa opção.
Depois que dermos um npm run typeorm migration:run no vscode, ele vai criar nossas tabelas.
Quando voltarmos para verificarmos se as tabelas foram criadas é importante dar um refresh.

from bootcamp-gostack-desafios.

nennogabriel avatar nennogabriel commented on July 24, 2024 120

Tente adicionar a linha
await queryRunner.query(CREATE EXTENSION IF NOT EXISTS "uuid-ossp");
na primeira migration. Isso fará com que o postgres instale o modulo caso ele não tenha.

from bootcamp-gostack-desafios.

jpcmf avatar jpcmf commented on July 24, 2024 64

Enfrentei o mesmo problema e resolvi com a dica do @nennogabriel e desse link no Stack Overflow 👍

public async up(queryRunner: QueryRunner): Promise<void> {
    await queryRunner.query('CREATE EXTENSION IF NOT EXISTS "uuid-ossp"');
    .
    .
    .

from bootcamp-gostack-desafios.

josepholiveira avatar josepholiveira commented on July 24, 2024 8

Faala @fiote e @tupizz, beleza?

Então, entendo essa dúvida de vocês, mas esse erro pode acabar acontecendo por alguns motivos diferentes, seja algum problema no container do docker, ou por exemplo em alguns casos configurando corretamente a Model já deve resolver o problema.

Porque não criamos uma área de problemas frequentes? Justamente porque esse é um problema que não vai acontecer exatamente de uma forma igual para todo mundo e no fórum, como o @tupizz mandou ali, já existem algumas soluções para isso de outras pessoas que passaram pelo mesmo problema.

Sobre a parte de "Direto pro código", vale a pena lembrar que programação não é só código, muitas vezes passamos por diversos tipos de problemas, seja esse por conta da forma que escrevemos o código ou não, e temos que sempre lembrar que nós como programadores não só criamos código, mas resolvemos problemas, e passar por esse tipo de problema é totalmente normal.

Os desafios tem totalmente o objetivo de desafiar, como diz o nome. Acreditamos que o template já facilita esse desafio bastante, mas a parte principal do desafio é aprender a lidar com os problemas e resolve-los, e um processo importante disso é pesquisar, ajudar ou receber ajuda.

Espero que tenham entendido, e lembrem-se que sempre que tiverem uma dúvida técnica, podem enviar diretamente no fórum, pois nosso atendimento é exclusivo por lá para esse tipo de dúvida. E para dúvidas não técnicas optem pelo discord ou pelo e-mail [email protected].

Abraços!

from bootcamp-gostack-desafios.

douglassantos45 avatar douglassantos45 commented on July 24, 2024 7

Geralmente esse problema está associado ao @PrimaryGeneratedColumn(), da uma olhada se você setou no decorator o uuid, ex: @PrimaryGeneratedColumn('uuid').

from bootcamp-gostack-desafios.

rivanbello avatar rivanbello commented on July 24, 2024 5

Esse problema ocorreu comigo quando tentei rodar as migrations sem ser um super usuário.
Utilizei o docker para criar o container, criei um usuário com nome customizado, assim perdendo o poder de super usuário.
Depois recriei container sem definir um nome para o usuário (o padrão é "postgres"), só defini a senha, então deu tudo certo em rodar as migrations.

from bootcamp-gostack-desafios.

manscalh avatar manscalh commented on July 24, 2024 5

//o meu ficou assim e funcionou....

import { MigrationInterface, QueryRunner, Table } from "typeorm";

export default class CreateTableTransactions1611790430027 implements MigrationInterface {

public async up(queryRunner: QueryRunner): Promise {
await queryRunner.query(CREATE EXTENSION IF NOT EXISTS "uuid-ossp");
image

await queryRunner.createTable(
  new Table({
    name: 'transactions',
    columns: [
      {
        name: 'id',
        type: 'uuid',
        isPrimary: true,
        generationStrategy: 'uuid',
        default: 'uuid_generate_v4()'
      },
      {
        name: 'title',
        type: 'varchar'
      },
      {
        name: 'type',
        type: 'varchar',
      },
      {
        name: 'value',
        type: 'decimal',
        precision: 10,
        scale: 2
      },
      {
        name: 'created_at',
        type: 'timestamp',
        default: 'now()',
      },
      {
        name: 'updated_at',
        type: 'timestamp',
        default: 'now()',
      }
    ]
  })
);

}

public async down(queryRunner: QueryRunner): Promise {
await queryRunner.dropTable('transactions');
}
}

from bootcamp-gostack-desafios.

tupizz avatar tupizz commented on July 24, 2024 3

Então, também fiquei na dúvida pq durante a aula funcionou e na base de cógido do template não... 🤔🤔
Eu setei as mesmas versões do typeorm e client pg... Conseguiriam explicar? (só de curiosidade mesmo, o erro foi resolvido de fato)

ref: typeorm/typeorm#3009

@diego3g @josepholiveira

from bootcamp-gostack-desafios.

jonatasoc avatar jonatasoc commented on July 24, 2024 3

Eu resolvi da seguinte forma:
Fui no DBeaver, no banco de dados que eu criei, com o botão direito do mouse em cima do símbolo do Banco de dados existe a opção create, acompanhando as opções que se abrem tem a opção extension, uma das últimas opçoes lá dentro é a tão procurada uuuid-ossp, pronto, é só habilitar essa opção.
Depois que dermos um npm run typeorm migration:run no vscode, ele vai criar nossas tabelas.
Quando voltarmos para verificarmos se as tabelas foram criadas é importante dar um refresh.

Resolvido com essa solução! Vlw, rapaz!

from bootcamp-gostack-desafios.

welbertSilva avatar welbertSilva commented on July 24, 2024 2

Resolvi tambem da mesma forma que o colega cacpmw.
Basta completar as models com os decorators.

from bootcamp-gostack-desafios.

tupizz avatar tupizz commented on July 24, 2024 1

https://skylab.rocketseat.com.br/h/forum/gostack-11/a95b757d-2742-4678-9b91-0f3a41415588#92159bf6-6f87-44ba-afbc-098011448900

Talvez, após criar os modelos com o typeorm por default e debaixo dos panos ele verifica a estratégia de utilização para geração do id e caso seja 'uuid' ele por si só roda o comando que tivemos que rodar. x)

from bootcamp-gostack-desafios.

lucasengel avatar lucasengel commented on July 24, 2024 1

Povo, a única solução aceitável aqui é a do @nennogabriel.

Talvez em projetos informais seja aceito usar uma IDE para instalar extensões, mas num time de desenvolvimento de software isso é considerado gambiarra.

from bootcamp-gostack-desafios.

cacpmw avatar cacpmw commented on July 24, 2024 1

Resolvi o problema simplesmente adicionando os decorators nos models

from bootcamp-gostack-desafios.

HalissonAlves avatar HalissonAlves commented on July 24, 2024 1

A dica do @AllanFont3s resolveu por aqui. Muito obrigado.

Eu resolvi da seguinte forma:
Fui no DBeaver, no banco de dados que eu criei, com o botão direito do mouse em cima do símbolo do Banco de dados existe a opção create, acompanhando as opções que se abrem tem a opção extension, uma das últimas opçoes lá dentro é a tão procurada uuuid-ossp, pronto, é só habilitar essa opção.
Depois que dermos um npm run typeorm migration:run no vscode, ele vai criar nossas tabelas.
Quando voltarmos para verificarmos se as tabelas foram criadas é importante dar um refresh.

from bootcamp-gostack-desafios.

joaopaulu avatar joaopaulu commented on July 24, 2024

Eu resolvi da seguinte forma:
Fui no DBeaver, no banco de dados que eu criei, com o botão direito do mouse em cima do símbolo do Banco de dados existe a opção create, acompanhando as opções que se abrem tem a opção extension, uma das últimas opçoes lá dentro é a tão procurada uuuid-ossp, pronto, é só habilitar essa opção.
Depois que dermos um npm run typeorm migration:run no vscode, ele vai criar nossas tabelas.
Quando voltarmos para verificarmos se as tabelas foram criadas é importante dar um refresh.

Muito obrigado @AllanFont3s Eu estava com esse mesmo problema e deu certo aqui seguindo sua solução.

from bootcamp-gostack-desafios.

heliogbrier avatar heliogbrier commented on July 24, 2024

@joaopaulu boa dica, resolver memo!!!

from bootcamp-gostack-desafios.

dsmanhaes avatar dsmanhaes commented on July 24, 2024

SOLVED
Resolvido com a dica do @AllanFont3s

Eu resolvi da seguinte forma:
Fui no DBeaver, no banco de dados que eu criei, com o botão direito do mouse em cima do símbolo do Banco de dados existe a opção create, acompanhando as opções que se abrem tem a opção extension, uma das últimas opçoes lá dentro é a tão procurada uuuid-ossp, pronto, é só habilitar essa opção.
Depois que dermos um npm run typeorm migration:run no vscode, ele vai criar nossas tabelas.
Quando voltarmos para verificarmos se as tabelas foram criadas é importante dar um refresh.

from bootcamp-gostack-desafios.

edmundobiglia avatar edmundobiglia commented on July 24, 2024

Resolvi o problema simplesmente adicionando os decorators nos models

Também consegui resolver colocando os decorators no model, além de também ter ativado a extensão uuid-ossp.

from bootcamp-gostack-desafios.

jeffersonfelixdev avatar jeffersonfelixdev commented on July 24, 2024

Legal a ideia de resolver o problema inserindo a query na primeira migration, mas acho que isso quebra um pouco da função do TypeORM que é ser o mais abstrato possível, independente de banco de dados.
Neste caso a solução mais adequada é habilitar o uuid-ossp manualmente no banco de dados.

from bootcamp-gostack-desafios.

hrafaelalves avatar hrafaelalves commented on July 24, 2024

Também consegui resolver esse problema, apenas adicionando os decorators nos models.

from bootcamp-gostack-desafios.

dluan avatar dluan commented on July 24, 2024

Tente adicionar a linha
await queryRunner.query(CREATE EXTENSION IF NOT EXISTS "uuid-ossp");
na primeira migration. Isso fará com que o postgres instale o modulo caso ele não tenha.

Boa, resolveu pra mim, obrigado!

from bootcamp-gostack-desafios.

allanchrs avatar allanchrs commented on July 24, 2024

Tente adicionar a linha
await queryRunner.query(CREATE EXTENSION IF NOT EXISTS "uuid-ossp");
na primeira migration. Isso fará com que o postgres instale o modulo caso ele não tenha.

funcionou

from bootcamp-gostack-desafios.

rodrigoKulb avatar rodrigoKulb commented on July 24, 2024

Show resolvi também adicionando pelo DBeaver adicionando a extensão. Muito obrigado!

from bootcamp-gostack-desafios.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.