如何在不在Rails中添加控制器的情况下填充表格?

时间:2013-08-18 01:47:04

标签: ruby-on-rails

我正在开发一个应用程序,允许用户创建事件并将其归档到类别中。当用户为事件属性填写他们自己的数据时,他们必须从他们的事件将被提交的预先存在的类别列表中进行选择。

我想将这些类别硬编码到应用程序中,但我不确定如何做到这一点。我想在没有控制器和视图的情况下这样做,所以我不必添加安全功能来阻止用户。

这些是我的模特:

class Category < ActiveRecord::Base
  attr_accessible :name
  has_many :events
end

class Event < ActiveRecord::Base
  attr_accessible :address, :category_id, :cost, :title, :venue
  belongs_to :category
  validates :address, :category_id, :cost, :title, :venue, presence: true
end

1 个答案:

答案 0 :(得分:0)

您可以使用所谓的Seeding Data来完成此操作。

以下是如何执行此操作的示例:

# db/seeds.rb
["Category1", "Category2", "Category3"].each do |category|
    Category.find_or_create_by_name(category)
end

然后从你的终端运行种子:

rake db:seed