我遇到以下情况:
我正在使用rails构建一个站点。我有两个名为User的类。一个是ActiveRecord,另一个是我想用来播种我的数据库的自定义类。问题:
我可以在名为User的自定义类中引用名为User的ActiveRecord类吗?
答案 0 :(得分:7)
两个具有相同名称的类将导致奇怪的行为,实际上只有一个类将包含来自两个文件的方法,这可能会导致大量问题。
您应该在模块中命名您的播种器类,例如:
module Seeder
class User
end
end
然后在需要使用此类时使用Seeder::User
。
答案 1 :(得分:0)
您正在使用名为User.rb的文件为数据库播种并且您正在使用Rails?为什么不使用db/seeds.rb
?
然后您可以使用rake db:seed
在seeds.rb
内你可以这样做:
(1..10).each do |i|
User.create(name: "name_#{i}")
end