Javascript Sequelize cli:在设定文件种子之前预运行另一个种子文件?

Javascript Sequelize cli:在设定文件种子之前预运行另一个种子文件?,javascript,mysql,node.js,sequelize.js,sequelize-cli,Javascript,Mysql,Node.js,Sequelize.js,Sequelize Cli,我使用sequelize cli创建了一个种子文件,将bulkInsert数据插入到mysql数据库中,效果很好。但是,我插入的其中一个字段(userId)是另一个表(User)中的值 我计划做的是运行一个种子,首先将数据插入用户表,然后运行第二个种子文件 我的疑问-我可以单独创建播种机文件,但如何按顺序运行这些文件。如果其他人正在寻找答案,请确保在我开始通过sequelize cli播种第二个种子之前运行并完成“用户”播种器文件 据我所知,到目前为止,似乎有两种选择: 创建一个单独的种子机文件

我使用
sequelize cli
创建了一个种子文件,将
bulkInsert
数据插入到mysql数据库中,效果很好。但是,我插入的其中一个字段(
userId
)是另一个表(
User
)中的值

我计划做的是运行一个种子,首先将数据插入
用户
表,然后运行第二个种子文件


我的疑问-我可以单独创建播种机文件,但如何按顺序运行这些文件。如果其他人正在寻找答案,请确保在我开始通过sequelize cli播种第二个种子之前运行并完成“用户”播种器文件

据我所知,到目前为止,似乎有两种选择:

  • 创建一个单独的种子机文件,并按顺序手动命名它们,即
    1-user-seeder.js
    2-application-seeder.js
    。正如上述评论中提到的@Mohdule
  • 导入Sequelize模型并在主播种器文件中创建用户。基于

  • 查看这篇关于迁移执行顺序的文章,因为它也适用于播种机(可能重复),您也可以通过手动重命名播种机文件以获得所需的执行顺序,例如,您可以添加一个编号前缀,如so
    1-users-table-seeder.js
    2-other-table-seeder.js
    谢谢。。。这是很大的帮助!这也意味着,我们现在必须将文件分组到一个文件夹中,而不是选择要预运行的文件夹。如果我想从另一个文件夹中预运行一个播种器文件(比如说它也是另一个播种器文件所需要的),该怎么办。。。通常,您有一个
    .sequelizerc
    ,在其中定义(配置、迁移、模型和种子)的路径,以便通过运行
    sequelize init
    生成
    config.json
    (或.js)文件,然后在运行sequelize命令时(例如:
    sequelize db:seed:all
    )Sequelize将根据您的配置自动查看相应的路径。