Ruby on rails 在Postgres和Rails 4中创建表

Ruby on rails 在Postgres和Rails 4中创建表,ruby-on-rails,postgresql,Ruby On Rails,Postgresql,在这方面我是一个全新的人;我使用psql控制台为数据库创建表,但我认为我做得不对,因为当我运行rakedb:migrate时,所有内容都被删除了。所以我的问题是,如何让它在重置时停止删除所有表,而不再次键入所有表?我想我应该使用模型,对吗 编辑-所以我浪费了所有的时间使用psql控制台制作表格 您需要使用“Rails方式”创建表。您应该阅读提供的链接,但本质上是创建迁移来跟踪数据库模式随时间的变化。您可以使用迁移来创建表、添加新列、更改列定义等。您可以使用迁移来从命令行创建表,如下所示: rai

在这方面我是一个全新的人;我使用psql控制台为数据库创建表,但我认为我做得不对,因为当我运行rake
db:migrate
时,所有内容都被删除了。所以我的问题是,如何让它在重置时停止删除所有表,而不再次键入所有表?我想我应该使用模型,对吗

编辑-所以我浪费了所有的时间使用psql控制台制作表格

您需要使用“Rails方式”创建表。您应该阅读提供的链接,但本质上是创建迁移来跟踪数据库模式随时间的变化。您可以使用迁移来创建表、添加新列、更改列定义等。您可以使用迁移来从命令行创建表,如下所示:

rails generate model Fruit title:string amount:integer
rake db:migrate

这不仅将创建具有指定名称的表
fruits
,还将创建一个模型
fruits
,您可以使用该模型创建表。您还可以自由编辑在运行
rake db:migrate
之前创建的迁移。您应该创建迁移文件来构建数据库。这就是您在运行rake db:migrate时所做的:您正在获取迁移文件并将其应用到数据库中。有关Rails迁移的更多信息,请参阅。

通过运行
$rake-T
可以检查每个rake任务。由于其他任务与某些rake任务一起运行,所以所有内容都被擦除。试一试

$ rake db:drop
$ rake db:create
$ rake db:migrate
只要您为Postgres角色授予了数据库创建权限,就应该正确创建数据库