我应该如何使用外部脚本构建Meteor项目?

时间:2014-09-24 17:39:53

标签: javascript python mongodb meteor structure

我很好奇是否有人开发了组织包含外部shell脚本的Meteor应用程序的最佳实践,或者发生在node.js服务器代码和客户端js代码之外的其他后端进程。

例如,我有一个像这样结构的流星应用程序:

project-name
  client
  lib
  models
  packages
  public
  server

我有一个处理一些外部数据源的shell脚本,以及一个执行其他繁重工作的Python脚本。这些都可以通过将新数据插入Mongo实例来提供帮助。是的,我知道这有点混乱,但后端数据系统也是如此。我的问题是我应该将这些类型的项目放在meteor app文件夹中,还是应该在系统之外?只是好奇其他人如何构建这样的应用程序。

选项#1

project-name
  client
  ...
  server
    data-processor.sh
    other-utility.py

选项#2

project-name
  client
  ...
  private
    data-processor.sh
    other-utility.py

选项#3

bin
  data-processor.sh
  other-utility.py
meteor-project-name
  client
  ...
  private

1 个答案:

答案 0 :(得分:1)

你不应该在流星项目目录中放置任何非流星文件,即使标准meteor-platform包无法识别扩展名,所有这些文件都可以通过某些包获取。因此将它们放入/server可能会在将来引起问题。另一方面,/private文件夹用于应用程序使用的资源,因此将脚本放在那里是非语义和不优雅的。

为避免将这些脚本移到项目文件夹之外,您可以将它们存储在隐藏目录中,即名称以点开头的任何目录,即/.scripts。放置在那里的文件将不会被Meteor应用程序选中。