NestJS + TypeORM + GraphQL | Code Challenge

Поделиться
HTML-код
  • Опубликовано: 19 окт 2024

Комментарии • 105

  • @laramycarvalho5021
    @laramycarvalho5021 3 года назад +5

    Excelente vídeo, é a stack do backend da empresa que trabalho. Me ajudou a tirar muitas duvidas da sintaxe e já repassei :)
    A Rocketseat sempre trazendo o suprassumo das stacks do mercado!!!!

  • @MsVictorAlisson
    @MsVictorAlisson 4 года назад +55

    Percebi um vacilo grande de cara:
    Vc não precisa criar as migrations na mão. Basta criar os models com as annotations e gerar as migrations que automaticamente o TypeORM na config do Nest é gerada. Sim, tem como gerar as migrations automaticamente a partir dos models.
    Outro vacilo: existe um orm.config.json que é destinado para a configuração do db do TypeORM (é a forma recomendada). Aí bastaria chamar createConnection() no main para startar o banco.
    Até onde vi foram esses os pontos de vacilo. No mais, parece ser um baita vídeo.
    Dêem like para a galera ver, please.

    • @delfiofrancisco3469
      @delfiofrancisco3469 4 года назад +2

      Boa noite amigo, segundo q documentação do typeorm não é recomendado utilizar a automatização das migrations (eu esqueci o nome do método)
      Segundo o que a própria documentação recomenda, pois pode gerar alguns erros de compatibilidades ou algo do tipo

    • @brunolombardi1512
      @brunolombardi1512 4 года назад

      Exatamente! Eu uso um ormconfig.ts, assim com dotenv eu leio as variáveis a partir de um arquivo .env ou das variáveis ambiente em produção. Assim a cada deploy eu executo as migrations.

    • @jonatasb5528
      @jonatasb5528 4 года назад

      Não falo que é exatamente vacilo. Mas há maneiras: syncronize e migration. O typeorm permite. O nestjs sugere o syncronize.

    • @Lindembergz
      @Lindembergz 4 года назад

      tem configurar la no Package.json o comando em script que o CLI vai executar...por exemplo: npm migration:generate

  • @srviktor8306
    @srviktor8306 3 года назад +14

    "um gatinho na tela e n sou eu" , humilde, kkkkkkkkkkkkkkkk, cara bom!!!!

  • @ceopaludetto
    @ceopaludetto 4 года назад +34

    Finalmente notaram meu framework favorito!

  • @paulosantana8056
    @paulosantana8056 4 года назад +3

    Tem usado para estudos e projetos pessoais e é incrível nestjs, muito bom e casa perfeitamente com typeorm

  • @ericsilvaccp
    @ericsilvaccp 4 года назад +2

    Cara já usei o NestJS em alguns projetos pessoais, ele integra perfeitamente com TypeORM, são ferramentas fantásticas, é simplesmente incrível.

  • @douglasdelabrida7219
    @douglasdelabrida7219 4 года назад +2

    Iniciei um projeto com o Nest.js no final de 2018, melhor decisão sem dúvidas.

  • @fernandokawano
    @fernandokawano 4 года назад

    Fiz um projeto para um cliente e nunca tinha criado o backend para minhas aplicações, NESTJS + Typeorm foram fantásticos pra meu sistema. JWT, mutter etc. Mt massa

  • @iurylemos2020
    @iurylemos2020 4 года назад +3

    Que aulão!! Parabéns, aprendi muita coisa aqui :)

    • @rocketseat
      @rocketseat  4 года назад +1

      Que massa Iury!! Valeeu pelo elogio! 💜💜

  • @henriqueamaral4017
    @henriqueamaral4017 2 года назад +3

    Resolvendo o problema que voce passou em 23:00 :
    O arquivo de configuração do orm deve se chamar ormconfig.json, com a mesma estrutura que voce usou no seu arquivo de config.
    type, database, migrations, entities. Voce so esqueceu do "cli", e ele que aponta para onde o cli vai criar a pasta, entao voce coloca no arquivo ormconfig.json o seguinte: "cli": { "migrationsDir": "pasta/pasta", "entitiesDir": "pasta/pasta" }
    O arquivo ormconfig.json deve estar na dir, no seu caso dentro da pasta back-end

  • @ohervis
    @ohervis 4 года назад

    Nest é delicinha. Uso ele desde 2018 e só vem melhorando

  • @leolima8585
    @leolima8585 4 года назад +2

    Irmão
    Assisti. Muito bom falar dessas stacks.
    E a falta de vídeos sobre geolocation e maps. Tipo envolvendo db e vídeos. Essa aula tenho muita.vonyade de comprar.se.nao for conteúdo gratuito. Parabéns pela destreza.

    • @tiagocunhafernandes6607
      @tiagocunhafernandes6607 4 года назад +1

      Léo, já teve semana omnistack com geolocation e maps.. também tem video de react native "recriando interface uber" feito pela rocketseat..

  • @РусланЮсуфов-ф3ш
    @РусланЮсуфов-ф3ш 3 года назад +1

    It was awesome! Thank you!

  • @alanschlindvein
    @alanschlindvein 4 года назад +7

    para rolar a criação da migration no local correto, tem que passar o caminho das migrations no atributo cli dentro do orm config

  • @preguicacansada6105
    @preguicacansada6105 4 года назад +1

    oi ainda não assisti o vídeo por completo mas eu queria tirar uma duvida.
    Como é a preparação de vocês para aprender um novo Framework , vocês estudam e já praticam aos mesmo tempo, mais ou menos quanto tempo levam para aprender e ter a confiança suficiente para aplicar em algum trabalho.

    • @preguicacansada6105
      @preguicacansada6105 4 года назад

      @@rodz vlw cara ajudou pra caramba , já sei pelo menos como começar .
      Obrigado!

    • @skas0lowAndMusic
      @skas0lowAndMusic 4 года назад +1

      Vai pro java com springboot e com angular e seja feliz ou não kkkkk

  • @oldwolfking
    @oldwolfking 4 года назад +40

    Achei vacilo não ter deixado o link do site que vc se baseou na descrição do video, codersera.com/blog/nestjs-typeorm-graphql-dataloader-tutorial-with-typescript/

    • @rocketseat
      @rocketseat  4 года назад +9

      Vaaleu, Gabriel! 💜 Você tem razão, devemos sempre colocar a fonte! 💜

    • @ilumynartms
      @ilumynartms 3 года назад +2

      Calma Gabriel, amigão não sei se percebeu, mais o Guilherme esta meio mal de saúde as altas horas da noite, e codando mais de 3 horas em video, kkkkk, acho que somente contribuir colocando o link e ajudando, como fez, já bastava ... agora chamar de vacilo é meio forçado kkk, Obrigado pela contribuição .... Abraços Browww

  • @leodiegoo
    @leodiegoo 4 года назад

    Qual o teclado que você usa? =)
    Ótimo vídeo!

  • @joeljesusJotaDrums
    @joeljesusJotaDrums 4 года назад

    Top man, eu tinha citado aqui para vcs sobre eles e vcs trouxeram

  • @higoribeiro
    @higoribeiro 4 года назад +3

    Iradooo !! 🚀

  • @jonathangomes7539
    @jonathangomes7539 4 года назад

    Já uso e adoro

  • @gabriellenoxel
    @gabriellenoxel 4 года назад

    Muito bom! E se eu quiser implementar um backend em nest.js na arquitetura de microserviços (que é suportada nativamente pelo nest), essa arquitetura é dividida em dois projetos nest (client e microservice). Então onde é o melhor lugar para dar deploy em cada um desses dois projetos? E como seria a comunicação entre eles em produção, com TCP?

  • @dbbrinfo3228
    @dbbrinfo3228 4 года назад

    Parabéns pelo post. Bem explicado. Me mata minha curiosidade, por favor. Voce está usando Linux, certo ? Se sim, qual a distribuição ? Valeu...

  • @paulosoares8626
    @paulosoares8626 4 года назад

    Muito bom o video , uma dúvida no caso do GraphQL, teria a possibilidade do response ser customizado por exemplo? tendo em vista que que se tiver um erro interno o próprio GraphQL já retorna um json com uma série de informações.

    • @rocketseat
      @rocketseat  4 года назад +1

      Faala, Paulo! 💜 Você conhece a nossa comunidade aberta? Por lá você pode tirar essas e outras dúvidas que tiver 💜 Segue o link: www.rocketseat.com.br/comunidade

  • @gabrielpires5427
    @gabrielpires5427 4 года назад

    Os .inputs seriam tipo 'models' que vem do front?
    e os resolver seria tipo uma service? onde teria os métodos de CRUD com regras por exemplo?
    teria como fazer esses tipos de analogias?( pra quem ainda não é muito familiar se achar hehe )

  • @JohanGuse
    @JohanGuse 4 года назад +2

    Repositório não tá lá... arruma o link? Essa stack é foda!

  • @ariamustofa
    @ariamustofa 4 года назад +1

    what os are you currently using?

  • @renanlido_dev
    @renanlido_dev 3 года назад

    Rodz ansiedade nivel hadcore! haha! 1milhão de clicks por segundo kkkkkkkkkkkkkkk

  • @jucelinofilho9404
    @jucelinofilho9404 4 года назад

    As migrações também precisam ter o caminho configurado dentro de um objeto chamado cli, também nas configurações do banco, na documentação do typeorm é explicado. Caso tenha problemas, você pode criar outro arquivo de configuração na raiz do projeto com as mesmas credenciais, só não esquecer de colocar no .gitignore antes de versionar.

  • @arayakadu
    @arayakadu 4 года назад +2

    Meus parabéns mesmo sem ter assistido as 3hrs ainda kkkkk

  • @hitallo91
    @hitallo91 4 года назад +5

    Isso parece muito com meus trabalhos na escola, CRTL+C e CRTL+V.

  • @thiagosantos6697
    @thiagosantos6697 4 года назад

    o Rodz é mt brabo

  • @leolima8585
    @leolima8585 4 года назад +1

    O que vocês acham de desbloqueio com impressão digital para react native?

  • @caiocutrim3596
    @caiocutrim3596 4 года назад

    da hora o video

  • @paula1rick
    @paula1rick 4 года назад +1

    Gostaria de sugerir uma aula aprofundada na questao de mobile first, como salvar no banco local, e sincronizar apos a conexao ser restabelecida.

  • @mariomorris1284
    @mariomorris1284 2 года назад

    wow

  • @samuelmarcossherman272
    @samuelmarcossherman272 3 года назад

    como resolveu o problema do arquivo de configuraçao ?

  • @patrickdorneles9415
    @patrickdorneles9415 4 года назад +1

    Conheci o NestJS a pouco mais de um ano, depois disso não consegui parar de usa-lo :D
    Fora isso seria melhor usar o sistema de modules do NestJS, acho que se encaixa mais no design do framework

  • @wesleyoliveira1233
    @wesleyoliveira1233 3 года назад

    Gosto muito desse formato de vídeo. Mostra o feitiço sendo feito e não a mágica.

  • @miguelsodre1208
    @miguelsodre1208 3 года назад

    Cara muito show o conteúdo, mas ele é muito avançado, eu que sou intermediário tive um pouco de dificuldade

  • @xMorthy
    @xMorthy 4 года назад +10

    Para quem quer que apareça os icones do NestJS ao invés de Angular:

    • @xMorthy
      @xMorthy 4 года назад +16

      "material-icon-theme.files.associations": {
      "*.controller.ts": "nest-controller",
      "*.module.ts": "nest-module",
      "*.service.ts": "nest-service",
      "*.middleware.ts": "nest-middleware",
      "*.filter.ts": "nest-filter",
      "*.pipe.ts": "nest-pipe",
      "*.gateway.ts": "nest-gateway",
      "*.decorator.ts": "nest-decorator",
      "*.resolver.ts": "nest-resolver",
      "*.input.ts": "nest-input",
      "*.guard.ts": "nest-guard",
      }

    • @hitallo91
      @hitallo91 4 года назад

      show meu querido

  • @israelmonteirobg525
    @israelmonteirobg525 4 года назад

    finalmente man kkkkkk ceta dddddd ai sim ein

  • @wesleyfeitosa0
    @wesleyfeitosa0 4 года назад +1

    curioso que no meu as subscriptions funcionaram bem.

  • @moullen4022
    @moullen4022 4 года назад +1

    como faz para deixar essas setinhas bonitas, nas arrows functions?

    • @marcosrossetto7304
      @marcosrossetto7304 3 года назад

      Não sei se já descobriu, mas é a fonte... Se chama Fira Code. github.com/tonsky/FiraCode

    • @moullen4022
      @moullen4022 3 года назад

      @@marcosrossetto7304 muito obrigado marcos!

  • @izak4912
    @izak4912 4 года назад

    Nice!

  • @EsronDtamar
    @EsronDtamar 4 года назад +3

    Ué, tá melhor que a semana omnistack? kkkkkk

  • @thiagoalencar3237
    @thiagoalencar3237 4 года назад

    Qual sistema operacional você usa?

    • @fabioramatis2373
      @fabioramatis2373 4 года назад +1

      Ele usa Ubuntu, so não sei dizer qual versão, provavelmente a 18.04 pelo layout

    • @thiagoalencar3237
      @thiagoalencar3237 4 года назад

      @@rodz Achei bem bacana o vídeo, primeiramente meus parabéns, tua evolução foi tremenda, meus parabéns msm, e faz tempo que não uso o Ubuntu achei que era Mac pela doca ser diferente kk

  • @leolima8585
    @leolima8585 4 года назад

    O que você pensam sobre vincular imei de aparelho para Android e ios como forma de limitar cadastros por aparelhos.em aplicativos

  • @isaiasmendes
    @isaiasmendes 4 года назад +2

    Para resolver o problema de criar as migrations no caminho correto, basta adicionar o trecho de código abaixo, no objeto options do arquivo orm.ts
    cli: {
    migrationsDir: 'src/db/migrations',
    },

    • @rocketseat
      @rocketseat  4 года назад +1

      Fala Isaías! Valeeu por compartilhar a solução! 💜

    • @dbtrnl
      @dbtrnl 3 года назад

      Aqui não funcionou, acabei usando um arquivo de config em JSON mesmo e apontando o typeorm pra ele com a flag --config.
      Por alguma razão o arquivo de config em TS não funciona :|

  • @iury664
    @iury664 Год назад

    nunca vi mexer nas migrations dessa forma

  • @abraaofaher2400
    @abraaofaher2400 4 года назад

    Poderia disponibilizar esse .bashrc?

  • @andersondossantoscruz3685
    @andersondossantoscruz3685 4 года назад

    Nunca usei nestjs, mais typeorm com typegraphql brilha

  • @ViniciusLanzoni
    @ViniciusLanzoni 3 года назад

    Alguém sabe pq dá esse erro hora que eu tento rodar:
    Error: Nest can't resolve dependencies of the UserResolver (?). Please make sure that the argument RepoService at index [0] is available in the UserResolver context.
    Potential solutions:
    - If RepoService is a provider, is it part of the current UserResolver?
    - If RepoService is exported from a separate @Module, is that module imported within UserResolver?
    @Module({
    imports: [ /* the Module containing RepoService */ ]
    })

    • @rocketseat
      @rocketseat  3 года назад

      Faaaaala, Vinicius!
      Bora lá pra nossa comunidade no Discord que o pessoal é incrível e tenho certeza que vai te ajudar! 💜

    • @ViniciusLanzoni
      @ViniciusLanzoni 3 года назад

      @@rocketseat Tem como me passar o link? :)
      O comunidade.rocketseat.com.br está dando invite inválido... :/

    • @ViniciusLanzoni
      @ViniciusLanzoni 3 года назад

      Depois de muito quebrar a cabeça e vários code reviews, descobri o problema e ai vai para futuras pessoas que porventura venham a enfretar o mesmo problema que eu:
      O decorator @Global() no RepoModule que eu não tinha colocado. :)

  • @flaviohugopangraciosilva6439
    @flaviohugopangraciosilva6439 4 года назад

    Esse tema Dracula está um pouco diferente, qual é?

  • @yangoncalves1520
    @yangoncalves1520 4 года назад

    alguém poderia me esclarecer o seguinte código:
    ...
    {data?.
    ...
    qual o significado de "?."

    • @franciscopessoa655
      @franciscopessoa655 4 года назад

      A interrogação basicamente diz que o parametro é opcional.

    • @caiocutrim3596
      @caiocutrim3596 4 года назад

      Em resumo, é uma validação, caso o data estiver presente ele vai rodar o map, caso contrário, não irá rodar, é tipo um ternário mais simplificado para propiedades de objetos.

  • @leof111
    @leof111 Год назад

    Não conheço essa Stack

  • @eltonsantosoficial
    @eltonsantosoficial 3 года назад

    Nest x Adonis?

  • @CodeModeler
    @CodeModeler 4 года назад

    I can't under stand your language ,but It is Awesome.

  • @joeldaros
    @joeldaros 4 года назад +8

    Esses ORMs parecem a 8 maravilha do mundo, até que sua aplicação fique complexa. Pra query’s complexas vira um inferno.

    • @souzaramon9522
      @souzaramon9522 4 года назад +9

      Todos os ORM's oferecem a possibilidade de vc dar raw em querys sql.

    • @joaovictor852
      @joaovictor852 4 года назад

      É pra isso que serve o Knex haha

  • @delfiofrancisco3469
    @delfiofrancisco3469 4 года назад

    To sonhando?

  • @iorrancastro
    @iorrancastro 4 года назад

    Solução: github.com/apollographql/apollo-link/issues/910#issuecomment-608272053
    node_modules/apollo-link/lib/types.d.ts:23:56 - error TS2315: Type 'ExecutionResult' is not generic.
    23 }, C = Record, E = Record> = ExecutionResult & {
    ~~~~~~~~~~~~~~~~~~~~~~
    Found 1 error(s).

  • @elvispalace
    @elvispalace 4 года назад

    Mano, faz um vídeo do React Native for Windows, pfv

  • @l.parrilla7513
    @l.parrilla7513 2 года назад

    30:00

  • @jacsa77
    @jacsa77 4 года назад +2

    English please

  • @bkunace
    @bkunace 4 года назад

    Rapaz, 3h de video...

  • @newsbrazil4419
    @newsbrazil4419 4 года назад

    pelo menos ele fala menos que o diego kkkkkk

  • @IcaroFelix2023
    @IcaroFelix2023 4 года назад +1

    Nestjs >>> Expres

  • @bkunace
    @bkunace 4 года назад +1

    Triste é ter que usar decorators, pra quem vem do javascript funcional, sem uso de typescript, é bem chato...
    Parece que ta usando spring boot do java (cruzes)

    • @4lm0std0n3
      @4lm0std0n3 4 года назад +3

      o melhor do javascript é o typescript e a molecada achando ruim

    • @leandrosoares6
      @leandrosoares6 3 года назад

      Nada pow há quem goste bastante de decorators.

  • @Lindembergz
    @Lindembergz 4 года назад

    desta forma consigo criar o migration baseado nos decorators da entidade:
    npm i -g @nestjs/cli
    npm i -D dotenv @types/dotenv
    npm i @nestjs/typeorm typeorm pg

    • @rocketseat
      @rocketseat  4 года назад

      Valeeeu pela dica, Lindemberg! 💜