我非常重视命名,所以我非常认真地思考我的ActiveRecord模型的好名字.然而,我经常会想到一个名称,它与数据库、Ruby或Rails中的保留名称有一些冲突.模型或字段名,如setgroup.有时这个问题也不是很明显.是否有一个我们不能在模型名中使用的名称列表和一个字段名列表?

推荐答案

Reserved Word List

ADDITIONAL_LOAD_PATHS
ARGF
ARGV
ActionController
ActionView
ActiveRecord
ArgumentError
Array
BasicSocket
Benchmark
Bignum
Binding
CGI
CGIMethods
CROSS_COMPILING
Class
ClassInheritableAttributes
Comparable
ConditionVariable
Config
Continuation
DRb
DRbIdConv
DRbObject
DRbUndumped
Data
Date
DateTime
Delegater
Delegator
Digest
Dir
ENV
EOFError
ERB
Enumerable
Errno
Exception
FALSE
FalseClass
Fcntl
File
FileList
FileTask
FileTest
FileUtils
Fixnum
Float
FloatDomainError
GC
Gem
GetoptLong
Hash
IO
IOError
IPSocket
IPsocket
IndexError
Inflector
Integer
Interrupt
Kernel
LN_SUPPORTED
LoadError
LocalJumpError
Logger
Marshal
MatchData
MatchingData
Math
Method
Module
Mutex
Mysql
MysqlError
MysqlField
MysqlRes
NIL
NameError
NilClass
NoMemoryError
NoMethodError
NoWrite
NotImplementedError
Numeric
OPT_TABLE
Object
ObjectSpace
Observable
Observer
PGError
PGconn
PGlarge
PGresult
PLATFORM
PStore
ParseDate
Precision
Proc
Process
Queue
RAKEVERSION
RELEASE_DATE
RUBY
RUBY_PLATFORM
RUBY_RELEASE_DATE
RUBY_VERSION
Rack
Rake
RakeApp
RakeFileUtils
Range
RangeError
Rational
Regexp
RegexpError
Request
RuntimeError
STDERR
STDIN
STDOUT
ScanError
ScriptError
SecurityError
Signal
SignalException
SimpleDelegater
SimpleDelegator
Singleton
SizedQueue
Socket
SocketError
StandardError
String
StringScanner
Struct
Symbol
SyntaxError
SystemCallError
SystemExit
SystemStackError
TCPServer
TCPSocket
TCPserver
TCPsocket
TOPLEVEL_BINDING
TRUE
Task
Text
Thread
ThreadError
ThreadGroup
Time
Transaction
TrueClass
TypeError
UDPSocket
UDPsocket
UNIXServer
UNIXSocket
UNIXserver
UNIXsocket
UnboundMethod
Url
VERSION
Verbose
YAML
ZeroDivisionError
@base_path
accept
Acces
Axi
action
attributes
application2
callback
category
connection
database
dispatcher
display1
drive
errors
format
host
key
layout
load
link
new
notify
open
public
quote
render
request
records
responses
save
scope
send
session
system
template
test
timeout
to_s
type
URI
visits
Observer

Database Field Names

created_at
created_on
updated_at
updated_on
deleted_at
(paranoia
gem)
lock_version
type
id
#{table_name}_count
position
parent_id
lft
rgt
quote_value

Ruby Reserved Words

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

Ruby-on-rails相关问答推荐

对Rails进行枚举不允许空值

包含字母和数字组合的正则表达式

API Rails 路由,令牌是路由的一部分

使用带有 Paper Trail gem 的子类

无效的单表继承类型:Rails

键入rails 控制台无法启动?

Ruby on Rails 取消首字母大写

在命名空间内设计

在 Ruby on Rails 中获取空临时目录的最佳方法是什么?

从 before_action 中排除控制器

如何在 routes.rb 中使用 301 或 302 进行重定向

Rails 成语避免在 has_many 中重复:通过

Rails:在 lib 目录中记录代码?

Rails 5:无法从参数中检索哈希值

如何获取包含表的列名的数组

如何在 Ruby 中创建一个新的 Date 实例

Rails:从视图内渲染视图(不是部分视图)

格式化日期对象以显示人类可读的日期

如何在 Rails 应用程序中测试 ElasticSearch (Rspec)

如何创建迁移以仅在索引存在时删除索引,而不是在不存在时抛出异常?