实例化类时,Rails未初始化的常量

用户名

我在Rails应用程序的app / datatables文件夹结构下创建了一个新类

该类保存在此目录中的文件中,并另存为DatasetIndexDatatable.rb

该类文件的内容如下:

class DatasetIndexDatatable
  delegate :params, :h, :link_to, :number_to_currency, to: :@view

  def initialize(view)
    @view = view
  end

end

当我尝试从应用程序中的控制器实例化此类时,Rails给出了一个错误:

uninitialized constant DatadescriptionController::DatasetIndexDatatable

控制器中试图实例化新类的代码如下:

class DatadescriptionController < ApplicationController
  layout "datadescription"

  def index
respond_to do |format|
        format.html
        format.json { render json: DatasetIndexDatatable.new(view_context) }
    end
  end

end

Rails为什么看不到新课程?我尝试将包含该类的文件夹添加到application.rb中的config.autoload_paths变量中:

config.autoload_paths += %W(#{config.root}/lib
                            #{config.root}/datatables)

但是会发生相同的错误。我还尝试使用全局名称空间在控制器中实例化新类:

format.json { render json: ::DatasetIndexDatatable.new(view_context) }

并将该类的包含文件夹用作名称空间:

format.json { render json: Datatables::DatasetIndexDatatable.new(view_context) }

一切都无济于事。我究竟做错了什么?

潜伏者

该文件命名不正确。代替:

DatasetIndexDatatable.rb

叫它:

dataset_index_datatable.rb

这是Rails的标准命名约定。如果定义一个CamelCase类,则应命名包含该定义的文件,该文件应使用camel_case.rb小写并带有下划线(又名,蛇格)。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

尝试实例化新类时出现未初始化的常量错误

来自分类Dev

在rails中使用gem时未初始化的常量

来自分类Dev

在Rails中调用类方法时获取未初始化的常量

来自分类Dev

NameError:未初始化的常量(rails)

来自分类Dev

Rails关联的未初始化常量

来自分类Dev

Rails,未初始化的常量Rails入门

来自分类Dev

Rails:控制器无法从模块/命名空间识别类-未初始化的常量

来自分类Dev

带有类继承的未初始化常量错误

来自分类Dev

Ruby类中的未初始化常量错误

来自分类Dev

实例化UISegementedControl的子类时,对类使用未实现的初始化程序'init(frame :)'

来自分类Dev

通过字段访问has_many时,类名不同的“未初始化常量”错误

来自分类Dev

NameError:引用模块中的类时未初始化的常量

来自分类Dev

通过字段访问has_many时,类名不同的“未初始化常量”错误

来自分类Dev

Rails 4未初始化的常量Admin :: Category

来自分类Dev

Rspec / Rails:未初始化的常量ActiveSupport :: Autoload(NameError)

来自分类Dev

Rails错误未初始化常量导入csv

来自分类Dev

来自Gem的Rails中的未初始化常量

来自分类Dev

Rails:NameError:未初始化的常量Sidekiq :: RetrySet

来自分类Dev

Rails模型-NameError:未初始化的常量

来自分类Dev

Rails-Sidekiq错误未初始化的常量

来自分类Dev

rails未初始化的常量Sprockets :: SassCacheStore

来自分类Dev

Rails的路由错误-未初始化的常量SubscribersController

来自分类Dev

Sidekiq WARN:未初始化的常量ViewDBWorker Rails 4

来自分类Dev

未初始化的常量TZInfo :: InvalidTimezoneIdentifier(NameError)-Rails 4

来自分类Dev

Rails路由错误未初始化的常量

来自分类Dev

Rails:路由错误:未初始化的常量SessionController

来自分类Dev

与Rails相关的模型以“ NameError未初始化的常量”退出

来自分类Dev

Rails / Factory Girl:未初始化的常量FactoryGirl(NameError)

来自分类Dev

Rails多态关联未初始化的常量错误

Related 相关文章

  1. 1

    尝试实例化新类时出现未初始化的常量错误

  2. 2

    在rails中使用gem时未初始化的常量

  3. 3

    在Rails中调用类方法时获取未初始化的常量

  4. 4

    NameError:未初始化的常量(rails)

  5. 5

    Rails关联的未初始化常量

  6. 6

    Rails,未初始化的常量Rails入门

  7. 7

    Rails:控制器无法从模块/命名空间识别类-未初始化的常量

  8. 8

    带有类继承的未初始化常量错误

  9. 9

    Ruby类中的未初始化常量错误

  10. 10

    实例化UISegementedControl的子类时,对类使用未实现的初始化程序'init(frame :)'

  11. 11

    通过字段访问has_many时,类名不同的“未初始化常量”错误

  12. 12

    NameError:引用模块中的类时未初始化的常量

  13. 13

    通过字段访问has_many时,类名不同的“未初始化常量”错误

  14. 14

    Rails 4未初始化的常量Admin :: Category

  15. 15

    Rspec / Rails:未初始化的常量ActiveSupport :: Autoload(NameError)

  16. 16

    Rails错误未初始化常量导入csv

  17. 17

    来自Gem的Rails中的未初始化常量

  18. 18

    Rails:NameError:未初始化的常量Sidekiq :: RetrySet

  19. 19

    Rails模型-NameError:未初始化的常量

  20. 20

    Rails-Sidekiq错误未初始化的常量

  21. 21

    rails未初始化的常量Sprockets :: SassCacheStore

  22. 22

    Rails的路由错误-未初始化的常量SubscribersController

  23. 23

    Sidekiq WARN:未初始化的常量ViewDBWorker Rails 4

  24. 24

    未初始化的常量TZInfo :: InvalidTimezoneIdentifier(NameError)-Rails 4

  25. 25

    Rails路由错误未初始化的常量

  26. 26

    Rails:路由错误:未初始化的常量SessionController

  27. 27

    与Rails相关的模型以“ NameError未初始化的常量”退出

  28. 28

    Rails / Factory Girl:未初始化的常量FactoryGirl(NameError)

  29. 29

    Rails多态关联未初始化的常量错误

热门标签

归档