采纳答案成功!
向帮助你的同学说点啥吧!感谢那些助人为乐的人
学习《12-11 创建菜单及数据对接:数据库migrations相关(非常重要)》这一课程, 1.输入:npm run migration:generate menus 2.报错: f() { npm run typeorm migration:generate -p “./src/migration/$@”; }; f menus ’f’ 不是内部或外部命令,也不是可运行的程序 或批处理文件 请问,为啥会出现该现象。谢谢 大佬
为了windows同学,创建了一个脚本,代码已经更新到nestjs项目:https://git.imooc.com/coding-617/nestjs-lesson/commit/68881ace5f632da35dd9671c24194c5a7c3d372e?style=split
使用migration:create 目录+名称 这种方案来初次创建migration
使用migration:generate:win 名称 来创建创建migration
这个有同学也是遇到了相同的问题,可以考虑
npm run typeorm migration:generate -p \"./src/migrations/$@"
把后面的$@ 替换成你的目录
一、 配置环境: Windows 11 家庭中文版 64位 Vscode版本:v1.70 july 2022 Mysql: mysql-8.0.28-winx64 typeorm: 0.3.7 终端:cmd 二、 现象描述: 将npm run typeorm migration:generate -p \"./src/migrations/$@" 中的$@替换为test-migrations后,仍然没有生成迁移。 三、 报错信息: nestjs-demo@0.0.1 migration:generate > f() { npm run typeorm migration:generate -p "./src/migrations/test-migrations"; }; f menus 'f' 不是内部或外部命令,也不是可运行的程序 或批处理文件。 截图如下: 三、期望解答: 1. $@ 替换成自己的目录后,终端中运行命令 npm run migration:generate menus为啥不行哦? 2. 出现该情况,会是typeorm版本的问题,还是配置上的问题? 3. 教学视频上输入npm run migration:generate menus命令后,程序返回 > f() { npm run typeorm migration:generate -p "./src/migrations/test-migrations"; }; f “menus” 自己演示时,输入上述命令后,程序返回 > f() { npm run typeorm migration:generate -p "./src/migrations/test-migrations"; }; f menus 对比后发现,menus上了引号。 请问这是为啥,还希望老师解答下哈? 四、更多期待: 实践中发现Nestjs项目,使用typeorm来做数据迁移稍显繁琐,是否还有更好的nest框架下的迁移方案,若没有,还希望能够将typeorm迁移这部分学习得更深入全面些。
厉害了 小伙伴,我看到的最详细的提问回复。 针对问题1: 参考一下这个回答:https://coding.imooc.com/learn/questiondetail/287242.html 针对问题2: 命令问题。 针对问题3: Linux系统与Windows上的差异 typeorm来做数据迁移稍显繁琐,是否还有更好的nest框架下的迁移方案——这个有很多,比较简单的方法,是直接使用navicat sync这类工具进行小体量的迁移,如果是大体量的就有一些专业的工具,比如:阿里云的DTS,还有其他云平台,也有类似的工具。
登录后可查看更多问答,登录/注册
近几年快速发展的Node.js框架,掌握未来前端工程师后端开发能力
761 7
496 7
407 7
653 6
655 6