欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 汽车 > 维修 > Go-web开发之社区功能

Go-web开发之社区功能

2025/5/6 21:08:04 来源:https://blog.csdn.net/Deep_C/article/details/147645042  浏览:    关键词:Go-web开发之社区功能

社区功能

查询社区列表

community.go

func (Community) TableName() string 用于指定数据库表名

type Community struct {ID            int64     `json:"id" gorm:"primary_key;auto_increment"`CommunityID   string    `json:"community_id" gorm:"unique;not null"` // 社区IDCommunityName string    `json:"community_name" gorm:"not null"`      // 社区名称Introduction  string    `json:"introduction"`                        // 社区简介CreateTime    time.Time `json:"create_time"`                         // 创建时间UpdateTime    time.Time `json:"update_time"`                         // 更新时间
}func (Community) TableName() string {return "community"
}

route.go

	r.Use(middleware.JWTAuthMiddleware()){r.GET("/community", controller.CommunityHandler)r.GET("/community/:id", controller.CommunityDetailHandler)}

comunityController.go

func CommunityHandler(c *gin.Context) {communityList, err := logic.GetCommunityList()if err != nil {c.JSON(http.StatusOK, gin.H{"msg": "获取社区列表失败" + err.Error(),})return}c.JSON(http.StatusOK, gin.H{"msg":  "获取社区列表成功","data": communityList,})}
func CommunityDetailHandler(c *gin.Context) {// 1. 获取参数idStr := c.Param("id")id, err2 := strconv.ParseInt(idStr, 10, 64)if err2 != nil {return}// 2. 业务逻辑community, err := logic.GetCommunityDetail(id)if err != nil {c.JSON(http.StatusOK, gin.H{"msg": "获取社区详情失败" + err.Error(),})return}// 3. 返回数据c.JSON(http.StatusOK, gin.H{"msg":  "获取社区详情成功","data": community,})
}

communityLogic.go

func GetCommunityList() ([]models.Community, error) {// 1. 查询数据库	2. 返回数据return mysql.QueryCommunity()
}func GetCommunityDetail(id int64) (*models.Community, error) {// 1. 查询数据库return mysql.QueryCommunityById(id)
}

communityDao.go

func QueryCommunity() ([]models.Community, error) {// 1. 查询数据库var communityList []models.Communityerr := db.Select("community_id, community_name").Order("community_id desc").Find(&communityList).Errorreturn communityList, err
}func QueryCommunityById(id int64) (*models.Community, error) {var community models.Communityerr := db.Select("community_id, community_name, introduction").Where("community_id = ?", id).First(&community).Errorif err != nil {return nil, err}return &community, nil
}

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词