Rails保留类名

时间:2009-03-29 04:40:45

标签: ruby-on-rails ruby class naming

我尝试创建一个名为“类”的模型(如同一个毕业班的学生),并遇到各种问题。在Rails中要避免哪些其他单词或类名?

我发现的一些链接:
http://juicebar.wordpress.com/2007/05/30/reserved-words-in-rails/
http://railsforum.com/viewtopic.php?id=22242

3 个答案:

答案 0 :(得分:6)

此页面有一长串不使用的字词:

https://reservedwords.herokuapp.com/words

因为'class'通常作为metaprogamming的名字出现,我认为接受的ruby替代是'klass'。这显然是与毕业班级情况不同的背景,但可能仍然有用。

答案 1 :(得分:3)

你们大部分都在那里。显然,您还需要避免使用Ruby关键字:

alias   and     BEGIN   begin   break   case    class   def     defined  
do      else    elsif   END     end     ensure  false   for     if  
in      module  next    nil     not     or      redo    rescue  retry  
return  self    super   then    true    undef   unless  until   when  
while   yield  

(来自http://www.zenspider.com/Languages/Ruby/QuickRef.html#4)。

另外,不要将模型命名为Transaction(但生成器会对此发出警告!)。

答案 2 :(得分:0)

Class是一个内置的ruby类。它是什么类的实例。

class Foo
end

puts Foo.class
# => Class

覆盖它会破坏Ruby中的整个对象结构。