En lugar de usar un QueryContext
tambien se puede usar QueryRowContext y queda un poco mas limpia la funcion sin necesidad de iterar un registro para mapearlo que deberia de ser unico
func (p *PostgresRepository) GetStudent(ctx context.Context, id string) (*models.Student, error) {
var student models.Student
err := p.db.QueryRowContext(ctx, "SELECT id, name, age FROM students WHERE id = $1", id).Scan(&student.ID, &student.Name, &student.Age)
if err != nil {
return nil, err
}
return &student, nil
}
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?