Articles of search

用部分stringsearchmongoose的文本

您好我正在使用mongoosesearch我的collections中的人。 /*Person model*/ { name: { first: String, last: String } } 现在我想用查询search人员: let regex = new RegExp(QUERY,'i'); Person.find({ $or: [ {'name.first': regex}, {'name.last': regex} ] }).exec(function(err,persons){ console.log(persons); }); 如果我search约翰我得到的结果(事件,如果我search乔 )。 但是,如果我searchJohn Doe,我显然没有得到任何结果。 如果我将QUERY更改为John | Doe,我会得到结果,但是它会返回所有在John / Doe中包含最后/名字的人员。 接下来的事情是用mongoose文本search尝试: 首先添加字段索引: PersonSchema.index({ name: { first: 'text', last: 'text' } },{ name: 'Personsearch index', weights: { name: […]

使用Node.JS的iOS Firebase Flashlight / ElasticSearch Heroku安装程序

我正在使用Firebase后端在Swift中构build一个iOS应用程序。 我需要高级search选项为我的应用程序。 我被告知我应该通过这个github链接使用Flashlight / ElasticSearch https://github.com/firebase/flashlight 假设我的应用程序的名称是SneakerSearch和我的 Firebase Project_ID is- sneakersearch-az12 Firebase Web_API_Key is- abc123XYZ000… Firebase App_Url is- gs://sneakersearch-az12.appspot.com 我需要一些build议与设置这个步骤,因为我是新的Heroku和Node.js。 我以前从来没有学过,但我已经安装了Heroku工具带,并完成“sudo gem heroku安装”。 我列出了Github的方向/步骤和我为每个方向所采取的步骤。 我需要指导帮助:1,4,5,6,9,10,12和15。 1.Install and run ElasticSearch or add Bonsai service via Heroku 我在Heroku做了一个帐户。 1.问题:我是否需要创build应用程序的名称,并在设置Heroku帐户后进行部署,还是应该等到步骤#9? 2.git clone https://github.com/firebase/flashlight 2.我把上面的东西克隆到我的iOS应用程序的项目文件夹中 3.npm install 3.提示我首先运行“npm init”,然后运行“npm install” 4. edit config.js (see comments at the top, you […]

NodeJS:如何在服务器端观看大量的文件/文件夹进行更新?

我正在开发一个小型的NodeJS应用程序,它基本上用作基于浏览器的桌面search,以便用户可以查询的基于局域网的服务器。 在局域网上的用户都可以访问该服务器上的共享文件夹,传统上习惯于将文件夹放在该文件夹中以便在每个人之间共享,并且我希望保持该过程相同。 我碰到的第一个解决scheme是fs.watchFile ,在其他的stackoverflow问题上已经被触及。 在第一个问题中,用户Ivo Wetzel指出,在linux系统上,fs.watchFile使用inotify,但是认为fs.watchFile不应该用于大量的文件/文件夹。 在关于fs.watchFile的另一个问题中 ,用户tjameson首先重申,在Linux上,inotify将被fs.fileWatch使用,并推荐使用node-inotify-plusplus和node-walk的组合,但是再次声明这种方法不应该用于大量的文件。 有了评论和回应,他build议只查看目录的修改时间,然后重新扫描相关目录以更改文件。 我的最大障碍似乎是,即使有tjameson的build议,受监控文件夹的数量仍然有很大的限制(其中有很多不断增长的文件夹)。 此外,它将不得不做recursion,因为目录树是有点深,也可能会受到更改在较低的分支机构,所以我将不得不在每个文件夹级别监视以下(或者监视修改时间的文件夹,然后扫描以查明发生了什么): 创build文件或子文件夹 删除文件或子文件夹 移动文件或子文件夹 删除自我 自我移动 假设inotify的限制与上面所说的一致,那么当我拥有大量的嵌套子文件夹时,这对我来说似乎可能是太多监视器。 真正的真棒方式看起来像它会涉及kqueue ,我后来发现,作为一个更好的fs.fileWatch在谷歌组讨论的话题。 在我看来很清楚,保持相关文件和文件夹信息的数据库是在事物的查询方面的适当的操作过程,但是保持该数据库与在所关注的目录下的文件系统的实际状态同步将是挑战。 那么社区是怎么想的呢? 有没有一个更好的或众所周知的解决scheme来攻击这个问题,我只是不知道? 最好只是观察所有感兴趣的目录,例如修改时间,然后扫描以查明发生了什么? 观察所有相关的inotify警报并适当地修改数据库是否更好? 这不是像我这样的农民可以解决的问题吗?