pongo2 RegisterFilter如何返回地图或数组?

时间:2017-06-27 06:52:53

标签: go

我需要注册一个全局过滤器来从会话中返回userinfo。 我寄了一个新过滤器。

pongo2.RegisterFilter("getSessions", getSession)

func getSession(in, param *pongo2.Value) (*pongo2.Value,*pongo2.Error) {
    uInfo := lib.Sess.Get("userInfo")
    if uInfo == nil {
        lib.Logs.Error("get userinfo err from session")
    } else {
    }

    return pongo2.AsValue(uInfo), nil
}

并在html中使用如下:

{{ "getsess" | getSessions}}

但它不起作用,结果是空的。但如果再生一个字符串是有效的。 如果我想返回一个地图或数组。怎么做?

1 个答案:

答案 0 :(得分:0)

使用 <?php require "connect.php"; $sql ="SELECT * FROM products_orders JOIN products ON (products.PRODUCT_CODE =products_orders.PRODUCT_CODE) LEFT JOIN offers ON (offers.OFFER_ID = products_orders.OFFER_ID) "; $result = mysqli_query($conn, $sql) or die("Error in READING " . mysqli_error($conn)); $readsarray = array(); while($row =mysqli_fetch_assoc($result)) { $readsarray[] = $row; } echo json_encode($readsarray, JSON_UNESCAPED_UNICODE); $conn->close(); ?>

例如,这是return in.Slice(start, limit), nil过滤器的实现,可以在for循环中使用。

https://github.com/mattn/jedie/blob/0f3fb468befcb71b026f07b4158e121da8b6b0c5/helper.go#L120-L125