Я пытаюсь повторно использовать переменную borderSwitches
, но единственный способ добиться этого - повторно инициализировать ее в последнем предложении if
, есть ли более элегантный способ достижения этого?
borderTable := &databasemodel.borderTable{}
err = tx.First(borderSwitches, &databasemodel.borderTable{BaseModel: databasemodel.BaseModel{UUID: lagPair.borderTable}})
if err != nil {
return nil, errors.Errorf("Fetching border switch by UUID: %v", err)
}
if !borderTable.FirstBorderSwitchID.Valid {
borderTableFirstID := borderSwitches.ID
borderTable = &databasemodel.borderTable{}
err = tx.First(borderSwitches, &databasemodel.borderTable{FirstBorderTableID: sql.NullInt64{Int64: borderTableFirstID, Valid: true}})
if err != nil {
return nil, errors.Errorf("Fetching border table by DB ID: %v", err)
}
}
fmt.Println("borderTable: %v\n", borderTable)