补充:迁移文件的执行顺序 
                            
                                                    
                        
                    
                    
  
                    
                    迁移文件默认是按照创建先后的顺序来执行(文件名开始部分的时间戳作为排序依据)。教程中没有提及这一点,文档中有提到。
当时看到教程中 并且区分执行先后顺序,这确保了初始化数据发生在数据表结构创建完成后。 这句话时很困惑——如何『确保』的?执行顺序又是如何确定的?是按照创建的先后顺序还是可以指定顺序?如果可以指定顺序,那是在 migrate 命令中指定还是需要创建一个设置文件来指定?虽然直觉觉得执行顺序应该是创建顺序,不过还是查了下文档,发现默认顺序确实如此。另外,通过命令指定顺序也是可行的,migrate 命令提供了一个 --path 选项,可以每次指定一个文件来执行。
所以,如果在创建数据表结构之前先创建了初始化数据的迁移文件,那要么删掉后者再次创建,要么指定顺序执行。
另一方面,『创建初始化数据迁移文件应该在创建数据表结构迁移文件之后』也算是一个『约定』吧。
 
           
         
             
             
                     
                     
           
           关于 LearnKu
                关于 LearnKu
               
                     
                     
                     粤公网安备 44030502004330号
 粤公网安备 44030502004330号 
 
推荐文章: