【问题标题】:Slice by value of array按数组的值切片
【发布时间】:2019-03-25 09:34:29
【问题描述】:

如何按 id 对数组进行切片

{
  "id": 1
  "status": "available" 
  "snapshot_id" : 1
  ...
},
{
   "id": 2
   "status" "non available"
   "snapshot_id" : 0
   ...
}

我没有从数据库或其他东西中获取它。需要像这样按值切片,但不是来自数据库

o.QueryTable("Ticket").Filter("Status", "Pending").All(&newticket)

【问题讨论】:

    标签: json api go beego


    【解决方案1】:

    根据idstatussnapshot_id 等值参数从现有数组创建子数组

    我已经重现了你的场景并根据值参数对数组进行了切片

    package main
    
    import (
        "fmt"
    )
    
    type Ticket struct {
        id          int
        status      string
        snapshot_id int
    }
    
    func main() {
    
        var newTicket []Ticket
    
        TicketArr := []Ticket{{1, "available", 1}, {2, "n.a", 2}, {3, "available", 30}}
    
        for _, v := range TicketArr {
    
            if v.status == "available" {
    
                newTicket = append(newTicket, v)
            }
        }
    
        fmt.Println("newTicket", newTicket)
    
    }
    

    输出:

    newTicket [{1 available 1} {3 available 30}]
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-04-16
      • 2012-11-10
      • 1970-01-01
      • 1970-01-01
      • 2017-10-04
      • 2017-05-31
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多