[英]How to do neo4j parameter safe for Ruby on Rails?
例如,句子是"I'm playing football"
该参数必须为"I\\'m playing football"
并带有对neo4j体系结构的单引号。
我尝试了variable.html_safe
但是很遗憾,它不起作用。
运行时信息:
Neo4j database version: neo4j 3.3.1
neo4j gem version: 9.0.7
neo4j-core gem version: 8.1.0
作为参考,在neo4j
库中的一个问题上回答了此问题 。 在此处复制/粘贴:
您可以做几件事。 我要说的第一件事是,您永远不要(或者至少非常很少)将数据直接注入查询字符串。 有可能:
理想情况下, sqlParametre
应该是一个数组,以便您可以执行以下操作:
tablo = Word.query_as(:w).where('w.ad IN {ads}').params(ads: sqlParametre)
# or as a shortcut:
tablo = Word.query_as(:w).where('w.ad IN ?', sqlParametre)
但是,由于您拥有ActiveNode
模型,因此您也可以在更高级别上工作,并用以下代码替换第89和91行:
kayitSayisi = Word.as(:w).where(ad: sqlParametre).pluck('SUM(w)').first
对于最后一行,请注意,如果sqlParametre
是数组,则neo4j
gem自动检测到该情况并创建Cypher语法WHERE w.ad IN {param}
而不是WHERE w.ad = {param}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.