Neo4j Cypher: true boolean is recognized as string

1k Views Asked by At

In my application, to change the visibility of a node, I defined a is_full_show parameter which takes a true or false. I have an updateNodeEntity() function to change the other parameter values when needed. Following is part of my Cypher query in updateNodeEntity() function:

"START n=node(" + nodeId + ") SET n.first_Name='" + neLabel + "', n.is_full_show=true, n.need_ne_update_approval=false";

When I run the query, I can see the parameter(s) changed successfully. However, the boolean n.is_full_show=true becomes a string n.is_full_show="true" and my node doesn't appear in my app. For more detailed description, following is the request payload from console:

ne_id:5306
ne_name:"Mike Mice"
ne_properties:"["email","address","first_Name","last_Name","membership","is_full_show","n.need_ne_update_approval"]"
ne_properties_val:"["[email protected]","123S Street","Mike","Mice","Silver",true,false]"

and the response:

"properties": {
    "Email": "[email protected]",
    "Address": "123S Street",
    "first_Name": "Mike",
    "Last_Name": "Mice",
    "Membership": "Silver",
    "is_full_show": "true",
    "n.need_ne_update_approval":"false"
}

I tried many options such as return true with a function, regexp, etc. But could not fix it. Any help/suggestion will be appreciated. Thanks.

0

There are 0 best solutions below