如何生成Array()或Integer()之类的ruby方法?

如何生成Array()或Integer()之类的ruby方法?,ruby,Ruby,我有一个类Schema,我希望能够有一个方法Schema()或类似的东西 这可能吗?如果可能,是如何实现的?您只需在顶部名称空间中定义它,完全独立于您的模式类 def Schema(options) ... end 然后叫它。如果它是一个没有参数的方法,您仍然必须始终以Schema()的形式调用它。您可以按照下面提到的方式调用它,但是它与ruby名称约定相矛盾,该约定规定: 方法名称应该以小写字母开头,后面可以跟在后面 通过数字、下划线和字母 你试过了吗?这不是一个很好的主意,我的困惑是因

我有一个类
Schema
,我希望能够有一个方法
Schema()
或类似的东西


这可能吗?如果可能,是如何实现的?

您只需在顶部名称空间中定义它,完全独立于您的
模式

def Schema(options)
  ...
end

然后叫它。如果它是一个没有参数的方法,您仍然必须始终以
Schema()

的形式调用它。您可以按照下面提到的方式调用它,但是它与ruby名称约定相矛盾,该约定规定:

方法名称应该以小写字母开头,后面可以跟在后面 通过数字、下划线和字母


你试过了吗?这不是一个很好的主意,我的困惑是因为我认为它与类有关,而不仅仅是一些以大写字母开头的全局方法。我知道这是一种不好的做法,但知道显而易见的答案是正确的,这是件好事。不,你会这样定义它。试试看!哦,好的。是的,我知道他们可以。但让人困惑的是——让它们看起来像常数。谢谢你的回答。知道这一点很好,但知道这被认为是不好的做法也很好:)