Maison  >  Article  >  développement back-end  >  Comment utiliser le langage Go pour écrire le module de gestion des favoris des utilisateurs dans le système de cuisson porte-à-porte ?

Comment utiliser le langage Go pour écrire le module de gestion des favoris des utilisateurs dans le système de cuisson porte-à-porte ?

王林
王林original
2023-11-01 11:18:20799parcourir

Comment utiliser le langage Go pour écrire le module de gestion des favoris des utilisateurs dans le système de cuisson porte-à-porte ?

Comment utiliser le langage Go pour écrire le module de gestion des favoris des utilisateurs dans le système de cuisson porte-à-porte ?

En tant que langage de programmation rapidement populaire, le langage Go fonctionne bien dans le domaine du développement Web. Cet article explique comment utiliser le langage Go pour écrire le module de gestion des favoris des utilisateurs dans le système de cuisson porte-à-porte et fournit des exemples de code spécifiques.

  1. Concevoir un modèle de base de données

Tout d'abord, nous devons concevoir le modèle de base de données des favoris des utilisateurs. En supposant que les utilisateurs peuvent collecter plusieurs plats, nous pouvons concevoir deux tables : la table des utilisateurs et la table des favoris.

La table utilisateur peut contenir les champs suivants :

  • ID utilisateur (ID)
  • Nom d'utilisateur (Nom d'utilisateur)
  • Mot de passe (Mot de passe)
  • Heure de création (CreatedAt)
  • Heure de mise à jour (UpdatedAt)

Tableau des favoris Peut contenir les champs suivants :

  • ID favori (ID)
  • ID du plat (DishID)
  • ID utilisateur (UserID)
  • Heure de création (CreatedAt)
  • Heure de mise à jour (UpdatedAt)
  1. Créer une connexion à la base de données

En langage Go, nous pouvons utiliser des bibliothèques tierces telles que Gorm pour faire fonctionner la base de données. Tout d’abord, vous devez configurer une connexion à la base de données et créer des tables associées.

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. Définir des modèles et des relations

En langage Go, nous devons définir des modèles pour mapper les tables de base de données. Voici les définitions des modèles Utilisateur et Favoris.

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. Implémenter la fonction de gestion des favoris

Afin de réaliser la fonction de gestion des favoris, nous pouvons définir certaines interfaces associées, telles que l'ajout de favoris, la suppression de favoris, l'obtention de la liste des favoris des utilisateurs, etc.

// 添加收藏夹
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
}

L'exemple de code ci-dessus peut implémenter les fonctions d'ajout, de suppression et d'obtention des favoris des utilisateurs.

Pour résumer, cet article présente comment utiliser le langage Go pour écrire le module de gestion des favoris des utilisateurs dans le système de cuisson porte-à-porte. En définissant le modèle de base de données, en créant des connexions à la base de données et en implémentant les fonctions correspondantes, nous pouvons facilement gérer les favoris des utilisateurs. J'espère que cet article pourra vous aider, et bonne programmation !

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn