我想知道如何检查项目中是否已存在模型?
当用户尝试使用相同的型号名称以编程方式创建模型时,需要检查它是否已存在?
答案 0 :(得分:22)
defined? ModelName
将返回“常量”。
答案 1 :(得分:3)
由于defined?
存在问题(请参阅@Jiggneshh Gohel的评论),也许您可以检查models
目录中的文件名。
files = Dir[Rails.root + 'app/models/*.rb']
models = files.map{ |m| File.basename(m, '.rb').camelize }
models.include? "User" => true
答案 2 :(得分:0)
另一种选择是使用exists
如果模型中没有列,则返回false。