使用固定列创建一个空表 - Ruby on Rails

时间:2013-09-26 16:28:02

标签: ruby-on-rails ruby database

我对铁轨上的红宝石很新,在过去的几天里一直试着玩它。 基本上尝试:创建一个空表,固定列 - Ruby on Rails

我创建了一个这样的模型:

rails g model table
rails g migration table

我的tables.rb文件如下所示:

class Tables < ActiveRecord::Migration
  def change
    add_column :table, :firstname, :string
    add_column :table, :lastname, :string
  end
end

(希望我创建的列好了)

然后我跑了:

rake db:migrate RAILS_ENV=development

但似乎得到一个错误没有这样的表:table(但我以为我创建了它?)

另外,在html.erb文件中,我可以用什么来查看localhost:3000上的表格?

1 个答案:

答案 0 :(得分:0)

您正在显示的内容是您的tables.rb文件是迁移文件,而不是模型。模型存储在app / models中。迁移位于db / migrate中,其名称是日期时间戳,后跟迁移名称。

您的迁移正在执行add_column。在create_table之前,您不能添加add_column。应该使用“rails g model table”构建迁移。请使用整个文件名显示所有迁移。

检查提供的dax文档。 rails generate命令使用程式化的命令行。可以使用正确的迁移名称自动生成许多标准迁移功能,例如创建表和添加列。例如:

rails g migration add_url_to_feed url:string

这将创建一个迁移,将名为url的字符串列添加到源表。

通常,迁移应该按照您的需要进行。然而,你需要另一个命令,rake。引用是here。例如:

rake db:create          # Create the database from config/database.yml for the current Rails.env

可以为您创建数据库。

相关问题