<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    老妖的博客
    現(xiàn)實的中沒有幾個人能夠真為對方去死,甚至山盟海誓很快就會在金錢面前變的微不足道,這才是生活。沒有永遠的愛,除了你的父母對你,當然也就沒有永遠的恨,更沒有永遠的痛,時間是最好的治療大師,它會很快撫平你心靈上累累的傷痕。很多年以后你想起來時,那些在你生命中洶涌來往的人群至多是個模糊的影子或者毫無意義的名字
    posts - 105,  comments - 171,  trackbacks - 0

    作為java中的O/R Mapping的使用者來說,看到rails中的activeRecord的實現(xiàn)后不禁汗顏,原來O/R Mapping可以如此簡單。
    我反復看過幾遍activeRecord的文檔,覺得其靈活之處不亞于hibernate,而且簡單實用。
    現(xiàn)作筆錄如下:
    1.關聯(lián)
    n:1: belongs_to: XXXX
    1:n: has_many:XXX
    1:1: has_one :XXX
    m:n: has_and_belongs_to_many:XXX
    連接join: :through => :XXX (for ex:has_many :photos :through => :slides) rails 1.1才有此功能
    特殊關聯(lián):
    acts_as_list :列表
    acts_as_tree :父子關系
    acts_as_nested_set

    class Slide < ActiveRecord::Base
    ? belongs_to :slideshow
    ? acts_as_list :scope => "slideshow_id"
    ? belongs_to :photo
    end
    表示sildes表中的slideshow_id為belongs_to :slideshow關系中的外鍵(FK)
    class Category < ActiveRecord::Base
    ? acts_as_tree
    end

    ?

    2.級聯(lián)
    has_many :XXX, dependent => true

    3.設定主鍵:rails不支持復合主鍵,rails默認數(shù)據(jù)表中的主鍵名稱為id,如果您的主鍵不為id,如下設置:
    class Photo < ActiveRecord::Base
    ? set_primary_key "created_at"
    end
    4.domain中的繼承關系
    class Photographer < Person
    end

    class Person < ActiveRecord::Base
    end
    5.domain中的組件關系
    CREATE TABLE people (
    ?? id INT AUTO_INCREMENT NOT NULL,
    ?? type VARCHAR(20),
    ?? name VARCHAR(20),
    ?? email VARCHAR(30),
    ?? street_address VARCHAR(30),
    ?? city VARCHAR(30),
    ?? state VARCHAR(20),
    ?? zip INTEGER(5),
    ?? camera VARCHAR(20),
    ?? PRIMARY KEY (id)
    );

    class Person < ActiveRecord::Base
    ? composed_of :address, :class_name => "Address",
    ????????????? :mapping => [[:street_address, :street_address],
    ?????????????????????????? [:city, :city],
    ?????????????????????????? [:state, :State],
    ?????????????????????????? [:zip, :zip]]
    end
    class Address
    ? def initialize(street_address, city, state, zip)
    ??? @street_address = street_address
    ??? @city = city
    ??? @state = state
    ??? @zip = zip
    ? end

    ? attr_reader :street_address, :city, :state, :zip
    end
    6.查找記錄
    find_by_<column_name> find_by_id
    find_by_<column_name>_and_<column_name> find_by_name_and_email(name, email)
    7.驗證字段有效性
    class Photo < ActiveRecord::Base
    ? validates_presence_of :filename 驗證是否為空
    end

    validates_format_of :email,
    ??????????????????? :with => /^([^@\s]+)@((?:[-a-z0-9]+\.)+[a-z]{2,})$/i
    validates_length_of :name, :within => 6..100???????????????????
    8.事務處理
    def transfer(from, to, amount)
    ? Account.transaction do
    ??? from.debit(amount)
    ??? to.credit(amount)
    ? end
    end

    ?

    ?


    ?

    posted on 2006-09-14 15:55 老妖 閱讀(4962) 評論(0)  編輯  收藏 所屬分類: rails

    <2006年9月>
    272829303112
    3456789
    10111213141516
    17181920212223
    24252627282930
    1234567

    常用鏈接

    隨筆分類(48)

    隨筆檔案(104)

    好友鏈接

    我的豆瓣

    積分與排名

    • 積分 - 220770
    • 排名 - 257

    最新評論

    閱讀排行榜

    主站蜘蛛池模板: 999国内精品永久免费观看| 在线看片免费人成视频播| 拨牐拨牐x8免费| 国产日本亚洲一区二区三区| 久久精品免费一区二区| 亚洲欧洲国产经精品香蕉网| 我们的2018在线观看免费高清| 国产成人亚洲合集青青草原精品| 欧美最猛性xxxxx免费| 2017亚洲男人天堂一| 暖暖免费高清日本中文| 国产亚洲福利一区二区免费看| 青青青国产色视频在线观看国产亚洲欧洲国产综合 | 亚洲成人福利在线| 国产卡二卡三卡四卡免费网址| 国产成人亚洲综合网站不卡| 日日操夜夜操免费视频| 国产精品免费久久久久久久久 | 亚洲AV乱码久久精品蜜桃| 日本一卡精品视频免费| 亚洲一区电影在线观看| 在线观看免费亚洲| 久久精品成人免费观看97| 亚洲福利视频网址| 日本一线a视频免费观看| 免费无码又爽又刺激高潮软件| 内射干少妇亚洲69XXX| 国产成人免费爽爽爽视频| 久久综合亚洲色hezyo| 国产亚洲婷婷香蕉久久精品| 18级成人毛片免费观看| 亚洲av无码一区二区三区天堂| 亚洲精品岛国片在线观看| 日本免费大黄在线观看| 日韩国产精品亚洲а∨天堂免| 亚洲日韩精品一区二区三区无码 | 久久性生大片免费观看性| 亚洲日韩在线视频| 亚洲国产一区视频| 国产h视频在线观看免费| 又黄又大的激情视频在线观看免费视频社区在线 |