向数据库添加类别的最佳方法

时间:2014-11-12 17:26:38

标签: database ruby-on-rails-4 heroku

我正在寻找最佳/最有效的方法来添加保存到数据库的类别。我已经使用名称列创建了类别模型。我生成了控制器。我的第一个想法是直接将类别输入控制器,因为我将是唯一可以创建,编辑和销毁它们的人。这就是它的样子:

class CategoriesController < ApplicationController

def women 
end

def kids
end

def babies
end

def home_decor
end

end

很好,但是这并没有保存到数据库中,因为我想稍后将这些类别与产品关联起来,我需要将它保存到数据库中。我可以直接在控制台中创建这些类别,但我不确定当我推动生产(在Heroku上)如何再次创建它们(这看起来有点单调乏味)。

我的另一个选择是创建一个表单来创建类别,并且只提供对管理员的访问权限。

我错过了什么吗?是否有更有效的方法来执行此操作,或者管理路由是处理它的最佳方式吗?

感谢您的任何建议!

1 个答案:

答案 0 :(得分:2)

忘了那个控制器。您要找的是db/seeds.rb。它只是一个放置数据库默认内容的脚本。因此,在您的情况下,您需要提供以下内容:

Category.delete_all # For avoiding duplicate content

Category.create!({id: 1, name: 'women'}) # Use create! so you'll know if there is any errors
Category.create!({id: 2, name: 'kids'})
# etc...

然后运行脚本将该内容放入db:

rake db:seed

在heroku中:

heroku run rake db:seed