How do I map rows to structs using GORM?

In Go, you can use GORM (Go Object Relational Mapping) to map rows from your database to Go structs easily. Here's a brief guide on how to do it.

GORM, Go, Object Relational Mapping, Database Interaction, Struct Mapping
GORM is a powerful ORM library for Go that makes it easy to interact with databases by mapping database rows to Go structs, allowing you to work with your data in a more object-oriented manner.
        
            package main

            import (
                "gorm.io/driver/sqlite"
                "gorm.io/gorm"
            )

            type User struct {
                ID    uint   `gorm:"primaryKey"`
                Name  string
                Email string
            }

            func main() {
                db, err := gorm.Open(sqlite.Open("test.db"), &gorm.Config{})
                if err != nil {
                    panic("failed to connect database")
                }

                // Migrate the schema
                db.AutoMigrate(&User{})

                // Create a new user
                db.Create(&User{Name: "John Doe", Email: "john@example.com"})

                // Retrieve user
                var user User
                db.First(&user, 1) // find user with ID 1
                fmt.Println(user.Name) // Output: John Doe
            }
        
    

GORM Go Object Relational Mapping Database Interaction Struct Mapping