diff --git a/src/util.jl b/src/util.jl index b7a12e8..7db4187 100644 --- a/src/util.jl +++ b/src/util.jl @@ -2,7 +2,7 @@ module util export timedifference, showstracktrace, findHighestIndexKey, uuid4snakecase, replaceDictKeys, findMatchingDictKey, textToDict, randstring, randstrings, timeout, - dataframeToCSV, dfToVectorDict, disintegrate_vectorDict + dataframeToCSV, dfToVectorDict, disintegrate_vectorDict, dictToPostgresKeyValueString using JSON3, DataStructures, Distributions, Random, Dates, UUIDs, MQTTClient, DataFrames @@ -522,7 +522,19 @@ end - +function dictToPostgresKeyValueString(dict) + parts = [] + for (k, v) in dict + if isa(v, Dict) + push!(parts, "\"$k\": " * dict_to_string(v)) + elseif isa(v, AbstractString) + push!(parts, "\"$k\": \"$v\"") + else + push!(parts, "\"$k\": $v") + end + end + return "{" * join(parts, ", ") * "}" +end