现在我们自己去创建一个 Migration,比如我想在项目里添加一个新的数据表,名字是 post .. 里面打算存储一些文章内容 ..
在命令行的下面,可以先去创建一个 Migration ..
adonis make:migration post
选择要执行的动作,这里选择 Create table,意思是创建新的表 .. 提示在项目里创建了一个新的 migration ..
回到项目 .. 在 database ,migrations 里面,有个 post_schema ..
在这个 migration 类的 up 方法里面,已经用了 table 的 increments 在 posts 这个表里添加了一个 id 字段,还有 timestamps .. 它会添加一个 created_at 还有 updated_at ..
adonis 框架里面的这个功能用的是 knex 提供的 .. 所以具体你可以怎么样去创建数据表的结构,你需要参考 knex 的创建 Schema 相关的文档 ..
比如我需要一个字符串类型的字段 .. 可以用一下 table.string .. 字段的名字是 title ..
table.string('title')
先在这个表里添加这些东西 .. 保存一下 .. 再回到命令行 ... 可以查看一下 migration 的状态 ..
adonis migration:status
会提示有一个 migration 还没有被运行 .. 这个就是刚才我们创建的 post schema
再执行一下:
adonis migration:run
运行一下 migration ... 成功以后可以查看一下 migration 的状态 .. 这回会提示 post_schema 这个 migration 已经 migrated 了 .. batch ,批次号是 2 ..
然后可以再回到使用命令行连接到的数据库 .. show tables; 这里会有一个 posts 表 .. describe posts; 会显示这个表的结构 ..
你会发现,里面有 id ,title,created_at 还有 updated_at 这几个字段 ..