|
标签:as3 |
分类:视频教程 |
KerryLib v0.1 更新内容
com.kerry.effect
com.kerry.page
com.kerry.util
KerryLib v0.1 部分 demo 程序效果:
第2版的 R4RMusic 的控制器动作及相应模版总结
|
控制器 |
描述 |
动作方法名 |
主模板 |
|
Customer |
登录 注销 注册一个新帐号 给购物车添加一个版本 查看购物车 结帐(购买完毕) |
login logout signup add_to_cart view_cart check_out |
main/welcome.rhtml main/welcome.rhtml main/welcome.rhtml customer/view_cart.rhtml customer/view_cart.rhtml cu |
1. 当在 ActiveRecord 模型类中编写一个新方法时,可以把方法区分为:被动方法(即那些仅仅获取数据并返回数据的方法)和主动方法(即那些生成新的数据结构的方法)
class Composer < ActiveRecord::Base
end
2. 软模型改进与硬模型改进:本质区别
本质区别在于:软改进描述给 ActiveRecord 提供辅助;硬改进涉及产生新的数据。
1. 通过软改进细化 Work 模型
(1)哪些发行商发行过该作品的版本
def p
1. 模型实例功能概览:Rails 模型实例的功能来源于四个地方
■ 通过实例所属的类继承,该实例可以调用所属类的父类(即 ActiveRecord::Base 或该类的另外一个后代)的实例方法。
■ 根据相关的数据库表的字段名自动生成的读写方法(accessor)和其它方法。举例来说,由于数据库表 composers 中有 title 字段,所以 Composer 的对象具有 title 和 title= 方法。
■ 在使用关联指令时,半自动生成的读写方法和其它方法。例如,在 Work 类中的 has_one: composer。
■ 通过编程添加的任意多个实例方法,它们根据需要被添加到模型定义文件中。
2. 继承的和自动获得的 ActiveRecord 模型实例行为
(1)ActiveRecord 对象的两种存在方式
ActiveRecord 和典型的 Ruby 对象之间是有差别的,ActiveRecord 对象有两种存在方式:一方面,它是一个 Ruby 类。另一方面,它是一个句柄,可以用它来直接操作数据库记录。
ActiveRecord 的
1. 单例方法在何处定义
对象的单例方法定义在对象单例类中。每个对象实际上有两个类:
■ 多个对象实例共享的类
■ 单例类
可以将某个对象的单例类看作是它独有的方法保护区,仅属于该对象,其它对象不能分享
obj = Object.new
def obj.talk
end
obj.talk
2. 直接检查和修改单例类
单例类是匿名的,可以使用 class 关键字的一个特殊形式来完成,class 后面跟一个常量
class C
end
使用以下面特殊记法来打开单例类的定义体
str = 'I am a string'
class << str
正则表达式可用于:在字符串中扫描某个模式的多次出现,进行字符串替换操作,基于匹配分界符将一个字符串分割为多个子字符串。
1. 正则表达式的字面构造方法
(1)字面构造方法就是一对正斜杠://
(2)可以从两个方向使用 match:正则表达式对象和字符串对象都可以响应 match方法
puts 'Match!' if /abc/.match('The alphabet starts with abc.')
puts 'Match!' if 'The alphabet starts with abc.'.match(/abc/)
Ruby 还提供了模式匹配操作符 =~(等号加波浪号)
puts 'Match!' if /abc/ =~ 'The alphabet starts with abc.'
puts 'Match!' if 'The alphabet starts with abc.' =~ /abc/
(3)match 与 =~ 的主要不同之处在于匹配时的返回值不同:
=~ 返回匹配开始处的字符在字符串中的数值索引,而 match 返回 MatchData 类的实例
>> 'The alphabet starts with abc' =~ /abc/
=> 25
>> /abc/.ma
数组是有序的对象集合,有序意味着可以基于连续的数字索引从集合中选择对象。
散列是无序的集合,这意味着不能说第一/第二个或第N个元素是什么。散列将对象以成对的方法存储起来,每一对有一个键和一个值,通过键来索引值。散列在其它语言中有时也叫字典或联合数组。
1. 创建一个新数组
a = Array.new
a = []
a = [1,2,'three',4, [] ]
用 Array.new 的好处是,允许指定数组的大小,并可对其内容进行初始化
>> Array.new(3)
=> [nil, nil, nil]
>> Array.new(3,'abc')
=> ['abc', 'abc', 'abc']
甚至可以为 Array.new 提供代码块
>> n = 0
=> 0
>> Array.new(3) { n += 1; n * 10 }
=> [10, 20, 30]
2. 插入、检索和删除数组元素
(1)一次读写多个数组元素
>> a = ['red','orange','yellow','purple','gray','indigo','violet']