使用'功能'是否安全?作为Ruby和Rails中的模型名称?
class Function < ActiveRecord::Base
...
end
我希望与某些默认类有一些冲突,但也许我错了。
答案 0 :(得分:1)
您永远无法确定潜在的名称冲突。它可能在某些时候很好,但是稍后,您依赖的某些库可能会决定使用该名称。人们采取的一种实用策略是将所有内容放在命名空间(模块)中,并使用您认为在此时安全的名称。如果后来与某些内容发生冲突,您只需在代码中的任何位置重命名该命名空间,而无需触及任何其他内容。
答案 1 :(得分:1)
如果它不在保留的方法和类名中,则通常可以使用
在此处查看列表 http://www.rubymagic.org/posts/ruby-and-rails-reserved-words
但在阅读代码或谈论代码时使用function
可能会造成混淆。
“查看Function类中的函数并确保其正常运行”
答案 2 :(得分:0)
c700595-3:VtM deh0002a$ rails c
Loading development environment (Rails 4.2.0)
2.1.5 :001 > Function
NameError: uninitialized constant Function
from (irb):1
from /Users/deh0002a/.rvm/gems/ruby-2.1.5@vtm/gems/railties-4.2.0/lib/rails/commands/console.rb:110:in `start'
from /Users/deh0002a/.rvm/gems/ruby-2.1.5@vtm/gems/railties-4.2.0/lib/rails/commands/console.rb:9:in `start'
from /Users/deh0002a/.rvm/gems/ruby-2.1.5@vtm/gems/railties-4.2.0/lib/rails/commands/commands_tasks.rb:68:in `console'
from /Users/deh0002a/.rvm/gems/ruby-2.1.5@vtm/gems/railties-4.2.0/lib/rails/commands/commands_tasks.rb:39:in `run_command!'
from /Users/deh0002a/.rvm/gems/ruby-2.1.5@vtm/gems/railties-4.2.0/lib/rails/commands.rb:17:in `<top (required)>'
from bin/rails:4:in `require'
from bin/rails:4:in `<main>'
2.1.5 :002 >
所以你可以安全地申报这样的课程。