Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

373
Visualizações
¿Cómo insertar filas de la tabla de unión en knex.js?

Creé la tabla de usuarios, roles y roles de usuarios (mapeador). Son relaciones M:N.

la tabla de usuarios tiene id, nombre

roles tiene id, nombre

users_roles tiene user_id, role_id

Soy nuevo en knex.js, así que creé tablas por separado sin ORM, con archivos de migración.

Tengo que establecer el rol del usuario e insertar la fila del usuario y la fila users_roles.

¿Cómo insertar filas como knex.js?

Pensé en insertar usuario, insertar rol y luego insertar users_roles con user_id, role_id...

¿Es la manera correcta? o házmelo saber de mejor manera. Incluso la forma de crear una tabla con knex.js.

 import { Knex } from 'knex'; export async function up(knex: Knex): Promise<void> { const result = await knex.schema.createTable('users', (table) => { table.bigIncrements('id'); table.string('discord_user_id', 20).notNullable().unique(); table.string('email', 50).nullable(); table.string('public_key', 50).notNullable().unique(); table.timestamp('created_at').defaultTo(knex.fn.now()); table.timestamp('updated_at').defaultTo(knex.fn.now()); }); console.log(result); } export async function down(knex: Knex): Promise<void> { await knex.schema.dropTable('users'); }
 import { Knex } from 'knex'; export async function up(knex: Knex): Promise<void> { await knex.schema.createTable('roles', (table) => { table.increments('id'); table.string('name', 30).notNullable().unique(); table.string('permission', 50).notNullable(); table.timestamp('created_at').defaultTo(knex.fn.now()); table.timestamp('updated_at').defaultTo(knex.fn.now()); }); } export async function down(knex: Knex): Promise<void> { await knex.schema.dropTable('roles'); }
 import { Knex } from 'knex'; export async function up(knex: Knex): Promise<void> { await knex.schema.createTable('users_roles', (table) => { table.bigInteger('user_id'); table.integer('role_id'); table.foreign('user_id').references('Users.id'); table.foreign('role_id').references('Roles.id'); table.timestamp('created_at').defaultTo(knex.fn.now()); table.timestamp('updated_at').defaultTo(knex.fn.now()); }); } export async function down(knex: Knex): Promise<void> { await knex.schema.dropTable('users_roles'); }
about 4 years ago · Santiago Gelvez
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda