Ruby on rails rails 3.1,如何定义全局常量?

Ruby on rails rails 3.1,如何定义全局常量?,ruby-on-rails,ruby-on-rails-3,ruby-on-rails-3.1,Ruby On Rails,Ruby On Rails 3,Ruby On Rails 3.1,我试图在config\environments\development.rb NEXT_PAGE_ID = 'next_page' 但是当我试图在视图中访问它时,我得到了这个错误 未初始化的常量ActionView::CompiledTemplates::下一页\u ID 我试图在/config/initializers/course\u builder中定义它,如下所示: NEXT_PAGE_ID = 'next_page' 但我也犯了同样的错误 重新启动服务器没有帮助。我能做什么 编辑

我试图在
config\environments\development.rb

NEXT_PAGE_ID = 'next_page'
但是当我试图在视图中访问它时,我得到了这个错误

未初始化的常量ActionView::CompiledTemplates::下一页\u ID

我试图在
/config/initializers/course\u builder
中定义它,如下所示:

NEXT_PAGE_ID = 'next_page'
但我也犯了同样的错误

重新启动服务器没有帮助。我能做什么

编辑

以下是全部错误:

未初始化的常量ActionView::CompiledTemplates::下一页\u ID

提取的源(第23行附近):

20:%>
21: 
22:
  • @page.position+1,:chapter\u id=>@page.chapter.id)) 24:链接到“下一页”,下一页,{:id=>Next\u Page\u id} 25:完 26:%>

  • 我将使用会话变量。在这种情况下(或在大多数情况下)不需要Globals,而且显然是有问题的

    session[:current_page_id]
    

    你可以做:

    Object.const_set('NEXT_PAGE_ID', 'next_page')
    

    但是,您可能应该为这类事情使用某种配置文件,而不是污染全局名称空间。

    course\u builder
    course\u builder.rb
    ?请粘贴完整的错误以及如何使用下一页ID。该错误似乎表明您可能错误地使用了常量。理想情况下,您应该能够在初始值设定项或环境文件中声明一个常量。好的,完整的错误在上面的问题中。好的!就是这样,谢谢Chowlett,文件应该是course_builder.rb而不是course_builder,我忘了添加扩展名,它现在可以工作了:-)NEXT_PAGE_ID用于用作“NEXT PAGE”的href的ID,它总是“NEXT_PAGE”,它不是记录的ID。HTML DOM页面上的元素是否有更好的命名约定?我仍然无法使用全局常量。如果它总是那个ID,那么只需在其中键入那个ID,而不用担心常量。。。如果您不打算更改这样的小东西,那么没有必要对其进行配置。
    session[:next_page_id]
    
    Object.const_set('NEXT_PAGE_ID', 'next_page')