Sev*_*rin 10 ruby ruby-on-rails ruby-2.0 ruby-on-rails-4
我正在尝试使用以下命令在rails中创建新模型:
rails new Education
Run Code Online (Sandbox Code Playgroud)
运行它时会返回以下错误:
名称"Education"已经在您的应用程序中使用或由Ruby on Rails保留.请选择替代方案并再次运行此生成器.
由于我刚刚创建了一个新的app并且只有一个其他模型,因此该应用程序中没有使用该名称,我很难想到为什么Rails会保留这样的名字的原因?
有关此错误来自何处以及如何解决此问题的任何想法?
(我已经尝试将名称更改为其他名称并且按预期工作.由于名称确实符合其目的,我不想更改其名称,除非没有其他方法!)
我使用Ruby 2.0.0与Rails 4.0.0和PostgreSQL
eng*_*nky 30
您可能无法创建与Application同名的模型,因为它会创建冲突的名称.创建应用程序时rails new Education
,它将创建一个名为Education
如下的模块
module Education
class Application < Rails::Application
#....
end
end
Run Code Online (Sandbox Code Playgroud)
然后,这个名为模块调用文件,例如config.ru
,routes.rb
和environment.rb
等等.因此,如果您能够使用相同的名称创建模型类,则会产生关于您是在调用模型还是模块的模糊性.
归档时间: |
|
查看次数: |
6666 次 |
最近记录: |