我是ruby on rails的新手,任何人都可以解释符号':'的含义是什么,'validates'和'create_table'是什么?这么多困惑......
class Post < ActiveRecord::Base
validates :name, :presence => true
validates :title, :presence => true, :length => {:minimum => 5}
end
class CreatePosts < ActiveRecord::Migration
def change
create_table :posts do |t|
t.string :name
t.string :title
t.text :content
t.timestamps
end
end
end
Run Code Online (Sandbox Code Playgroud)
冒号字符(:)是Ruby"符号"的语法文字的开头:
:abc.class # => Symbol "abc".to_sym # => :abc
符号就像字符串,但它们是"实习",这意味着Ruby解释器在内存中只有一个副本,尽管存在多个可能的引用(而在内存中可能同时存在许多等效的字符串).
validates上面示例中的' '标记是一个类方法(在"Post类"的类层次结构中),使用符号参数(:name)和具有单个键/值对的哈希参数调用:presence => true.
在" create_table"标记是一个正被称为具有单个参数(符号"方法:posts")和被赋予一个块,其接受一个参数'T’( do |t| ... end).
| 归档时间: |
|
| 查看次数: |
193 次 |
| 最近记录: |