ruby on Rails 中变量后面的感叹号是什么意思?
可能的重复:
为什么在 Ruby 方法中使用感叹号?
我正在阅读Rails3 与 MongoDB 的教程
http://www.mongodb.org/display/DOCS/MongoDB+Data+Modeling+and+Rails
我看到了这个 键:user_id、ObjectId 时间戳! 感叹号是什么意思??
谢谢。
class Story
include MongoMapper::Document
key :title, String
key :url, String
key :slug, String
key :voters, Array
key :votes, Integer, :default => 0
key :relevance, Integer, :default => 0
# Cached values.
key :comment_count, Integer, :default => 0
key :username, String
# Note this: ids are of class ObjectId.
key :user_id, ObjectId
timestamps!
# Relationships.
belongs_to :user
# Validations.
validates_presence_of :title, :url, :user_id
end
Possible Duplicate:
Why are exclamation marks used in Ruby methods?
i am reading tutorials for Rails3 with MongoDB
http://www.mongodb.org/display/DOCS/MongoDB+Data+Modeling+and+Rails
and i see this
key :user_id, ObjectId
timestamps!
what does the exclamation mark mean??
Thanks.
class Story
include MongoMapper::Document
key :title, String
key :url, String
key :slug, String
key :voters, Array
key :votes, Integer, :default => 0
key :relevance, Integer, :default => 0
# Cached values.
key :comment_count, Integer, :default => 0
key :username, String
# Note this: ids are of class ObjectId.
key :user_id, ObjectId
timestamps!
# Relationships.
belongs_to :user
# Validations.
validates_presence_of :title, :url, :user_id
end
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
一般来说,当 Ruby 中的方法后面出现“bang”时,它会更改源代码。
例如,检查以下输出:
x.capitalize 返回“String”,但变量 x 保持小写。当我添加 ! ('bang') 到最后 var x 被修改。
我对 mongodb 不太熟悉,但这可能有助于了解 ruby 中 bang 的目的。
in general, when a 'bang' follows a method in Ruby it will change the source.
for example check out the following output:
x.capitalize returns "String", but variable x remains lower case. When I add the ! ('bang') to the end var x is modified.
i am not overall familiar with mongodb, but this may shed some light onto the purpose of the bang in ruby.