Heim  >  Artikel  >  Backend-Entwicklung  >  Wie schreibe ich mit der Go-Sprache das Benutzerfavoriten-Verwaltungsmodul im Tür-zu-Tür-Kochsystem?

Wie schreibe ich mit der Go-Sprache das Benutzerfavoriten-Verwaltungsmodul im Tür-zu-Tür-Kochsystem?

王林
王林Original
2023-11-01 11:18:20762Durchsuche

Wie schreibe ich mit der Go-Sprache das Benutzerfavoriten-Verwaltungsmodul im Tür-zu-Tür-Kochsystem?

Wie verwende ich die Go-Sprache, um das Benutzerfavoriten-Verwaltungsmodul im Tür-zu-Tür-Kochsystem zu schreiben?

Als schnell populäre Programmiersprache schneidet die Go-Sprache im Bereich der Webentwicklung gut ab. In diesem Artikel wird erläutert, wie Sie mithilfe der Go-Sprache das Verwaltungsmodul für Benutzerfavoriten im Tür-zu-Tür-Kochsystem schreiben und spezifische Codebeispiele bereitstellen.

  1. Datenbankmodell entwerfen

Zuerst müssen wir das Datenbankmodell der Benutzerfavoriten entwerfen. Unter der Annahme, dass Benutzer mehrere Gerichte sammeln können, können wir zwei Tabellen entwerfen: Benutzertabelle und Favoritentabelle.

Die Benutzertabelle kann die folgenden Felder enthalten:

  • Benutzer-ID (ID)
  • Benutzername (Benutzername)
  • Passwort (Passwort)
  • Erstellungszeit (CreatedAt)
  • Aktualisierte Zeit (UpdatedAt)

Favoritentabelle Kann die folgenden Felder enthalten:

  • Favoriten-ID (ID)
  • Dish-ID (DishID)
  • Benutzer-ID (UserID)
  • Erstellungszeit (CreatedAt)
  • Aktualisierte Zeit (UpdatedAt)
  1. Datenbankverbindung erstellen

In der Go-Sprache können wir Bibliotheken von Drittanbietern wie Gorm verwenden, um die Datenbank zu betreiben. Zunächst müssen Sie eine Datenbankverbindung einrichten und zugehörige Tabellen erstellen.

package main

import (
    "github.com/jinzhu/gorm"
    _ "github.com/jinzhu/gorm/dialects/mysql"
)

var db *gorm.DB

func init() {
    // 创建数据库连接
    var err error
    db, err = gorm.Open("mysql", "username:password@tcp(localhost:3306)/database?charset=utf8mb4&parseTime=True&loc=Local")
    if err != nil {
        panic(err)
    }

    // 创建相关表
    db.AutoMigrate(&User{}, &Favorite{})
}

func main() {
    defer db.Close()

    // 进行其他操作
}
  1. Modelle und Beziehungen definieren

In der Go-Sprache müssen wir Modelle definieren, um Datenbanktabellen abzubilden. Im Folgenden finden Sie die Definitionen der Benutzer- und Favoritenmodelle.

type User struct {
    ID        uint   `gorm:"primary_key"`
    Username  string `gorm:"unique"`
    Password  string
    CreatedAt time.Time
    UpdatedAt time.Time
}

type Favorite struct {
    ID        uint   `gorm:"primary_key"`
    UserID    uint
    DishID    uint
    CreatedAt time.Time
    UpdatedAt time.Time

    User    User
    Dish    Dish
}
  1. Implementieren Sie die Favoritenverwaltungsfunktion

Um die Favoritenverwaltungsfunktion zu realisieren, können wir einige verwandte Schnittstellen definieren, z. B. das Hinzufügen von Favoriten, das Löschen von Favoriten, das Abrufen einer Benutzerfavoritenliste usw.

// 添加收藏夹
func AddFavorite(userID uint, dishID uint) error {
    favorite := Favorite{
        UserID:    userID,
        DishID:    dishID,
        CreatedAt: time.Now(),
        UpdatedAt: time.Now(),
    }

    err := db.Create(&favorite).Error
    if err != nil {
        return err
    }

    return nil
}

// 删除收藏夹
func DeleteFavorite(userID uint, dishID uint) error {
    err := db.Where("user_id = ? AND dish_id = ?", userID, dishID).Delete(&Favorite{}).Error
    if err != nil {
        return err
    }

    return nil
}

// 获取用户收藏夹列表
func GetFavoriteList(userID uint) ([]Favorite, error) {
    var favorites []Favorite
    err := db.Where("user_id = ?", userID).Find(&favorites).Error
    if err != nil {
        return nil, err
    }

    return favorites, nil
}

Der obige Beispielcode kann die Funktionen zum Hinzufügen, Löschen und Abrufen von Benutzerfavoriten implementieren.

Zusammenfassend stellt dieser Artikel vor, wie man mit der Go-Sprache das Benutzerfavoriten-Verwaltungsmodul im Tür-zu-Tür-Kochsystem schreibt. Durch die Definition des Datenbankmodells, die Erstellung einer Datenbankverbindung und die Implementierung der entsprechenden Funktionen können wir die Favoriten des Benutzers einfach verwalten. Ich hoffe, dieser Artikel kann Ihnen helfen und wünsche Ihnen viel Spaß beim Programmieren!

Das obige ist der detaillierte Inhalt vonWie schreibe ich mit der Go-Sprache das Benutzerfavoriten-Verwaltungsmodul im Tür-zu-Tür-Kochsystem?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn