我对铁轨上的红宝石很新,在过去的几天里一直试着玩它。 基本上尝试:创建一个空表,固定列 - 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上的表格?
答案 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
可以为您创建数据库。