ruby-on-rails - 在迁移中创建初始记录

标签 ruby-on-rails ruby ruby-on-rails-3

<分区>

我试图在我的迁移中创建记录,但我遇到了麻烦我以前做过(在我的高级开发人员的帮助下)并且我试图复制他所做的但它似乎没有创建记录数据库...

这是迁移文件

class PageEditor < ActiveRecord::Base; end

def create_initial_record
  PageEditor.create({
    :title => 'Events & Training',
            :content => ''
  })
  PageEditor.create({
    :title => 'Roof Mount - Training',
            :content => ''
  })
end

class CreatePageEditors < ActiveRecord::Migration
  def up
    create_table :page_editors do |t|
      t.string :title
      t.text :content

      t.timestamps
    end

    create_initial_record
  end

  def down
drop_table :page_editors
  end
 end

所以我添加了屋顶安装 - 训练部分,然后运行了 rake db:migrate 但它没有创建记录,也没有显示在我的索引页面上......

最佳答案

参见 http://edgeguides.rubyonrails.org/migrations.html#migrations-and-seed-data

更好的方法是使用 Rails 的“种子”功能:在 db/seeds.rb 文件中:

PageEditor.create({:title => 'Events & Training', :content => ''})
PageEditor.create({:title => 'Roof Mount - Training', :content => ''})

然后运行rake db:seed

关于ruby-on-rails - 在迁移中创建初始记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16201552/

相关文章:

ruby-on-rails - ActiveRecord::NoDatabaseError fatal error :数据库 "db/development.postgresql"不存在

ruby-on-rails - 复杂的查询...如何加入 rails 中的许多类?

ruby-on-rails-3 - 使用 Capybara 测试焦点

ruby-on-rails - ActiveRecord::未知属性错误

ruby-on-rails - Rails 中的 MiniTest 教程

ruby - 在 ubuntu 服务器上使用 RubyGems

ruby-on-rails - 如何将 Bitbucket 存储库添加到 jenkins?

ruby-on-rails-3 - Rails 控制台——输出查询结果表

ruby-on-rails - Rails 3.1 线程安全被破坏

ruby-on-rails - Ruby on Rails Postgres 服务器