在我的前端,用户可以根据日期范围和/或目的应用筛选器。我如何生成MongoDB过滤器,以便如果用户在日期范围内传递,它只将其用作过滤器?如果它只是目的,它只使用目的,如果两者兼而有之,则同时应用两个过滤器。我正在使用golang。这是我的代码


var filterData map[string]interface{}

if purpose != "" {

        filterData = bson.M{

            "purpose": purpose,

     }

var filterDate map[string]interface{}

if //condition for date range{

filterDate = bson.M{

        "paymentDate": bson.M{

            "$gte": startdate,

            "$lt":  enddate,

        },

}

}

//here i cant apply both

cursor, err = collection.Find(conn.DatabaseContext, findQuery)