rais324

1 Self 关键字
  self标识本身,self和Java中的this有些类似,代表当前对象
class User < ActiveRecord::Base
    def self.sha256(username,password)
    Digest::SHA256.hexdigest(username+password)
  end
end
这里的self 表示

在一class内可以省略语句中attribute和function里的self关键字(self.id->id),但有一例外,就是在赋值的时候, self.name = "Jom"不能省为name = "Jom",因为后者只会产生一个值为"Jom"的本地变量!

2
  <=> 方法通常意思为比较,返回值为-1,0或1分别表示小于,等于和大于。eg :1《=》2 结果 -1
3
user.save和user.save!都可以用来发送将user存储到数据库这一指令。区别在存储失败之后的表现上。user.save失败后只会返回一个false值(可以用if user.save判断), 而一旦user.save!失败,将会产生一个exception错误。所以在使用意图上,允许一定条件下(控制之中的)失败时,用user.save,而期望它一定要成功(不然就要启动应急rescue措施)时,用user.save!.

4
类变量
class Person
@@age=0 #使用前必须有初值
end

5 类方法
def Person.getNumber #类方法表示方法1
return @@number
end

def self.getNumber #类方法 表示方法2
  return @@number
end

类方法具体可分为两种:第一种是在所有的类的父类Class中定义的,且被所有的类所共享的方法;第二种是各个类所特有的特殊方法。
类方法中的self指的是类本身,这点需要牢记,这样我们可以使用多种方式定义类方法。

6 Symbol
Symbol是个简单的对象,它使用名字作为唯一的标识符。Symbol对象代表解释器内部一个唯一的名字。Symbol的产生很简单,只需要给一个字符序列前添加“:”或使用“to_sym”方法。 Symbol对象从属于Symbol类。
在使用中,Symbol往往表示一个名字,例如一个变量 foo的值为1,那么 :foo可以理解为变量名,如果直接引用foo,会得到1,但如果是 :foo就指变量名本身

7
rails202连接oracle的driver找不到
gem install activerecord-oracle-adapter 报
ERROR:  could not find activerecord-oracle-adapter locally or in a repository

Install some gems for this project:
1.gem install gettext  #±¾µØ»¯¿â
2.cd to the /gems directory in your ruby cosole,check the cmd:
ruby ruby-oci8-1.0.0-mswin32.rb
3.gem install activerecord-oracle-adapter --source http://gems.rubyonrails.org
If any questions about the activated version of activerecord,please check the cmd in
your ruby console:
gem cleanup
rake rails:freeze:edge

8
application.rb中配置中文化
    require 'gettext/rails'
    init_gettext 'urm'  # urm textdomain 绑定'textdomain'到所有的controllers/views/models上。
9 rails 连接 oralce database.yml配置
# oracle 9i client use tns "wimss_192.168.1.3" or
development:
  adapter: oracle
  database: (DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.3)         (PORT = 1521)))(CONNECT_DATA =(SERVICE_NAME = wimss)(SERVER = DEDICATED)))
  username: urm
  password: urm
  host: 192.168.1.3

10
  Rails 命令大全 http://www.iteye.com/topic/43500

11
   rails model,controller命名规则 :
   model 首字母大写,其他小写,如果是可分离单词 中间以_分割
   controller 与model一样 但后缀以复数结尾
  用scaffold 和model一样 ,会自动生成controller(复数形式的)
12
  rake db:mirgate version=365 365代表了执行 migrate 目录下的一个版本365前的脚本

13
  create table 中都有哪些关键字 可以看 (看源代码)
  attr_reader :name, :default, :type, :limit, :null, :sql_type, :precision, :scale
好像还有很多 ,就不知道哪里可以看的到了

你可能感兴趣的:(oracle,SQL Server,Ruby,ActiveRecord,Rails)