【问题标题】:Should I be concerned if my rails class is overridden by a reserved public method?如果我的 rails 类被保留的公共方法覆盖,我应该担心吗?
【发布时间】:2018-07-28 23:45:10
【问题描述】:

在构建我的 rails 应用程序时,我还没有意识到某些类名或单词是保留供使用的。我创建了一个名为“Protocol”的类(类 Protocol

我现在可以看到“protocol()”是 rails 中的公共方法,因此 netbeans 的标志是: https://apidock.com/rails/ActionDispatch/Http/URL/protocol

然而,我将一个命名为“Protocol”,并没有将任何方法命名为“Protocol”。我需要相当长的时间来修复这个错误(重命名所有关联并重新迁移表并移动数据等)。

即使有这个问题,一切似乎都运行良好。如果我不更改它,如果我的应用程序现在有任何问题,谁能解释一下怎么办?

【问题讨论】:

    标签: ruby-on-rails netbeans reserved-words


    【解决方案1】:

    不,您不必担心。 Rails 中没有 Protocol 类,即使有,它也很可能是命名空间的。

    您可以通过命令行生成模型来测试它是否被保留。例如,如果您尝试生成名为 ActiveSupport 的模型...

    $ rails g model ActiveSupport

    你会得到

    The name 'ActiveSupport' is either already used in your application or reserved by Ruby on Rails. Please choose an alternative and run this generator again.

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-06-15
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多