You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
importBaseSchemafrom'@ioc:Adonis/Lucid/Schema'exportdefaultclassextendsBaseSchema{protectedtableName='cursos'publicasyncup(){this.schema.createTable(this.tableName,(table)=>{table.increments('id')table.string('nome',50).notNullable()table.integer('duracao')table.string('modalidade',1).notNullable()/** * Uses timestamptz for PostgreSQL and DATETIME2 for MSSQL */table.timestamp('created_at',{useTz: true})table.timestamp('updated_at',{useTz: true})})}publicasyncdown(){this.schema.dropTable(this.tableName)}}
import{DateTime}from'luxon'import{BaseModel,column}from'@ioc:Adonis/Lucid/Orm'exportdefaultclassCursoextendsBaseModel{
@column({isPrimary: true})publicid: number
@column()publicnome: string
@column()publicduracao: number
@column()publicmodalidade: string
@column.dateTime({autoCreate: true})publiccreatedAt: DateTime
@column.dateTime({autoCreate: true,autoUpdate: true})publicupdatedAt: DateTime}
Rodar as Migration
node ace migration:run
Voltar as Migration
node ace migration:rollback
ou
node ace migration:refresh
Voltar as Migration ao início
node ace migration:reset
Criar uma seeder
node ace make:seeder [Nome]
Código de uma seeder
importBaseSeederfrom'@ioc:Adonis/Lucid/Seeder'importFuncionariofrom'App/Models/Funcionario'exportdefaultclassextendsBaseSeeder{publicasyncrun(){awaitFuncionario.createMany([{concessionariaId:1,matricula: '12345',cpf:'001.002.003-04',salario: 2500,nome: 'Hugo',email: 'hugo@gmail.com',idade: 20,telefone: 61991862235,endereco: 'QNO 7 Conjunto F',}])// Write your database queries inside the run method}}
Rodar uma seeder
node ace db:seed
Criando um Controller.
node ace make:controller [Nome]
Codigo de uma rota com Controller
// import type { HttpContextContract } from '@ioc:Adonis/Core/HttpContext'importAlunofrom"App/Models/Aluno";exportdefaultclassAlunosController{index(){returnAluno.query();}store({ request }){constdados=request.only(["nome","cpf","matricula","email","telefone","cep","logradouro","complemento","numero","bairro",]);returnAluno.create(dados);}show({ request }){constid=request.param("id");returnAluno.findOrFail(id);}asyncdestroy({ request }){constid=request.param("id");constaluno=awaitAluno.findOrFail(id);returnaluno.delete();}asyncupdate({ request }){constid=request.param("id");constaluno=awaitAluno.findOrFail(id);constdados=request.only(["nome","cpf","matricula","email","telefone","cep","logradouro","complemento","numero","bairro",]);aluno.merge(dados).save();returnaluno;}}