我知道,使用Neo4j Enterprise中可用的“关系属性存在约束”,我可以强制给定标签的关系具有某些属性,例如:
(标签“ LIKED”的关系始终具有“ day”属性)
CREATE CONSTRAINT ON ()-[like:LIKED]-() ASSERT exists(like.day)
但是是否可以强制从节点标签X到节点标签Y的关系具有特定属性?我想做的一个例子是:
(标签“ BOUGHT”与节点标签“ Person”到节点“ /”之间的关系始终具有“ day”属性)
CREATE CONSTRAINT ON (p:Person)-[bo:BOUGHT]-(b:Book) ASSERT exists(b.day)
但这不是有效的Cypher命令。是否有办法在模式级别实现此效果,或者我需要在应用程序层中实现它?谢谢。
答案 0 :(得分:0)
不幸的是,目前无法在架构级别实现这种效果。
您需要弄清楚如何在应用程序层中实现它。
如果此
type()
关系与其他Approach 1: def calc_length(s): if type(s) == int: print("Only Strings Have Lengths!!! Please enter a string!!") elif type(s) == float: print("Only Strings Have Lengths!!! Please enter a string!!") else: print(len(s)) calc_length(input("Please enter a String: ")) --------------------------------------------------------------------- Approach 2: def calc_length(s): if type(s) != str: print("Only Strings Have Lengths!!! Please enter a string!!") else: print(len(s)) calc_length(input("Please enter a String: "))
不同 关系(即其他节点标签对之间的LIKED关系) 然后您可以命名其他名称并创建“ relationship属性 存在约束” 。