tags
This commit is contained in:
		
							
								
								
									
										83
									
								
								bin/main.go
									
									
									
									
									
								
							
							
						
						
									
										83
									
								
								bin/main.go
									
									
									
									
									
								
							@@ -107,90 +107,47 @@ func main() {
 | 
			
		||||
			conditions += fmt.Sprintf(" AND categorie IN (%s)", strings.Join(categories, ","))
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		// 打印web_tags表的所有字段
 | 
			
		||||
		rows, err := mysqlConnection.Database.Query("SELECT * FROM web_tags LIMIT 1")
 | 
			
		||||
		// 获取标签列表
 | 
			
		||||
		var tags ListView
 | 
			
		||||
		tags.Page, tags.PageSize = stringToInt(r.FormValue("page"), 1), stringToInt(r.FormValue("pageSize"), 10)
 | 
			
		||||
		rows, err := mysqlConnection.Database.Query("SELECT id, name, update_time, create_time FROM web_tags"+conditions+" ORDER BY id DESC LIMIT ?, ?", (tags.Page-1)*tags.PageSize, tags.PageSize)
 | 
			
		||||
		if err != nil {
 | 
			
		||||
			log.Println(err)
 | 
			
		||||
			return
 | 
			
		||||
		}
 | 
			
		||||
		defer rows.Close()
 | 
			
		||||
		for rows.Next() {
 | 
			
		||||
			// 获取字段名
 | 
			
		||||
			columns, err := rows.Columns()
 | 
			
		||||
			if err != nil {
 | 
			
		||||
			var tag Tag
 | 
			
		||||
			if err := rows.Scan(&tag.Id, &tag.Name, &tag.UpdateTime, &tag.CreateTime); err != nil {
 | 
			
		||||
				log.Println(err)
 | 
			
		||||
				continue
 | 
			
		||||
			}
 | 
			
		||||
			// 获取字段值
 | 
			
		||||
			values := make([]interface{}, len(columns))
 | 
			
		||||
			for i := range values {
 | 
			
		||||
				values[i] = new(interface{})
 | 
			
		||||
			}
 | 
			
		||||
			if err := rows.Scan(values...); err != nil {
 | 
			
		||||
				log.Println(err)
 | 
			
		||||
				continue
 | 
			
		||||
			}
 | 
			
		||||
			// 打印字段名和字段值
 | 
			
		||||
			for i, column := range columns {
 | 
			
		||||
				log.Println(column, *(values[i].(*interface{})))
 | 
			
		||||
			}
 | 
			
		||||
			tags.List = append(tags.List, tag)
 | 
			
		||||
		}
 | 
			
		||||
		if err := rows.Err(); err != nil {
 | 
			
		||||
			log.Println(err)
 | 
			
		||||
			return
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
		// 打印web_tags表的总数
 | 
			
		||||
		var total int
 | 
			
		||||
		if err := mysqlConnection.Database.QueryRow("SELECT COUNT(*) FROM web_tags").Scan(&total); err != nil {
 | 
			
		||||
		// 获取总数
 | 
			
		||||
		if err := mysqlConnection.Database.QueryRow("SELECT COUNT(*) FROM web_tags" + conditions).Scan(&tags.Total); err != nil {
 | 
			
		||||
			log.Println(err)
 | 
			
		||||
			return
 | 
			
		||||
		}
 | 
			
		||||
		log.Println("total", total)
 | 
			
		||||
 | 
			
		||||
		/**
 | 
			
		||||
				// 获取标签列表
 | 
			
		||||
				var tags ListView
 | 
			
		||||
				tags.Page, tags.PageSize = stringToInt(r.FormValue("page"), 1), stringToInt(r.FormValue("pageSize"), 10)
 | 
			
		||||
				rows, err := mysqlConnection.Database.Query("SELECT id, name, update_time, create_time FROM web_tags"+conditions+" ORDER BY id DESC LIMIT ?, ?", (tags.Page-1)*tags.PageSize, tags.PageSize)
 | 
			
		||||
				if err != nil {
 | 
			
		||||
					log.Println(err)
 | 
			
		||||
					return
 | 
			
		||||
				}
 | 
			
		||||
				defer rows.Close()
 | 
			
		||||
				for rows.Next() {
 | 
			
		||||
					var tag Tag
 | 
			
		||||
					if err := rows.Scan(&tag.Id, &tag.Name, &tag.UpdateTime, &tag.CreateTime); err != nil {
 | 
			
		||||
						log.Println(err)
 | 
			
		||||
						continue
 | 
			
		||||
					}
 | 
			
		||||
					tags.List = append(tags.List, tag)
 | 
			
		||||
				}
 | 
			
		||||
				if err := rows.Err(); err != nil {
 | 
			
		||||
					log.Println(err)
 | 
			
		||||
					return
 | 
			
		||||
				}
 | 
			
		||||
		// 是否有下一页
 | 
			
		||||
		tags.Next = tags.Total > tags.Page*tags.PageSize
 | 
			
		||||
 | 
			
		||||
				// 获取总数
 | 
			
		||||
				if err := mysqlConnection.Database.QueryRow("SELECT COUNT(*) FROM web_tags" + conditions).Scan(&tags.Total); err != nil {
 | 
			
		||||
					log.Println(err)
 | 
			
		||||
					return
 | 
			
		||||
				}
 | 
			
		||||
		// 将对象转换为有缩进的JSON输出
 | 
			
		||||
		json, err := json.MarshalIndent(tags, "", "    ")
 | 
			
		||||
		if err != nil {
 | 
			
		||||
			log.Println(err)
 | 
			
		||||
			return
 | 
			
		||||
		}
 | 
			
		||||
 | 
			
		||||
				// 是否有下一页
 | 
			
		||||
				tags.Next = tags.Total > tags.Page*tags.PageSize
 | 
			
		||||
 | 
			
		||||
				// 将对象转换为有缩进的JSON输出
 | 
			
		||||
				json, err := json.MarshalIndent(tags, "", "    ")
 | 
			
		||||
				if err != nil {
 | 
			
		||||
					log.Println(err)
 | 
			
		||||
					return
 | 
			
		||||
				}
 | 
			
		||||
 | 
			
		||||
				// 输出JSON
 | 
			
		||||
				w.Header().Set("Content-Type", "application/json")
 | 
			
		||||
				w.Write(json)
 | 
			
		||||
		**/
 | 
			
		||||
		// 输出JSON
 | 
			
		||||
		w.Header().Set("Content-Type", "application/json")
 | 
			
		||||
		w.Write(json)
 | 
			
		||||
	})
 | 
			
		||||
 | 
			
		||||
	type Similar struct {
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user