隐藏控制器中的长选择列表数组

时间:2016-02-23 02:57:11

标签: ruby-on-rails arrays

我的控制器中有一个选择列表,它是一个数组,但它很长(大约400行) - 有什么方法可以让它出来或者在自己的文件中有什么东西吗?

2 个答案:

答案 0 :(得分:0)

有几种方法可以做到这一点。

您可以将这400行存储在:

  • 纯文本格式(some_array.txt)并使用File utils
  • 加载它们
  • json格式(some_array.json)并使用JSON
  • 加载它们
  • yaml format(some_array.yaml)并使用YAML加载它们

以下是使用第一种以纯文本格式存储并将其加载到类常量中的方法的示例,以便它们在生产中仅加载一次。

class SomeController < ApplicationController
  SOME_ARRAY = File.readlines("{Rails.root}/config/some_array.txt").collect(&:strip).freeze

  def some_action
    @some_array = SOME_ARRAY
  end
end

答案 1 :(得分:0)

试试这个..................

在您的配置/初始化程序

创建文件file_name.rb并在此文件中添加您的数组,例如:

在您的config / initializers / filename.rb

SOMEARRAY = [1,2,3,4,5]

现在重新启动应用程序并在您想要的应用程序中调用此数组。

希望这对你有用