gpt4 book ai didi

function - 如何减少 Golang 中重复函数的冗余代码?

转载 作者:行者123 更新时间:2023-12-01 20:23:13 27 4
gpt4 key购买 nike

我有一个 Rest API 应用程序,用于向浏览器列出所有 json 数据。只要我有更多模块,我的代码就更加冗余。且复杂。

func UserList(w http.ResponseWriter, r *http.Request) {
list := []models.User{}
db.Find(&list)
json.NewEncoder(w).Encode(list)
}

func ProductList(w http.ResponseWriter, r *http.Request) {
list := []models.Product{}
db.Find(&list)
json.NewEncoder(w).Encode(list)
}

func OrderList(w http.ResponseWriter, r *http.Request) {
list := []models.Order{}
db.Find(&list)
json.NewEncoder(w).Encode(list)
}

有没有更好的办法把这段代码做成一个函数例子

func List(w http.ResponseWriter, r *http.Request) {
list := ??? List of struct here ???
db.Find(&list)
json.NewEncoder(w).Encode(list)
}

最佳答案

你可以这样做:

func List(list interface{}, w http.ResponseWriter, r *http.Request,) {
db.Find(list)
json.NewEncoder(w).Encode(list)
}

关于function - 如何减少 Golang 中重复函数的冗余代码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59983906/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com