byterat

            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理 ::
            54 隨筆 :: 0 文章 :: 15 評論 :: 0 Trackbacks

          Tip 1. 默認情況下,Rails認為類名是單數,表明是復數形式。
          如果你不喜歡這樣的行為可以在配置文件(config/environment.rb)中設置一個全局標識來禁用它。
          ActiveRecord::Base.pluralize_table_names = false

          Tip 2.默認情況下,ActiveRecord會使用推導表明的算法,如果你不希望使用此算法可以在指定的model中使用 "set_table_name" 方法,例如:
          class Sheep < ActiveRecord::Base
          ?set_table_name "sheep"
          end

          Tip 3.SQL 類型和Ruby 類型之間的對應關系可能會在 decimal 類型的精度上出現問題。SQL的 demimal,numeric,float,double 都對應 Ruby 的 Float??梢允褂镁酆蠈ο?composed_of 對字段進行處理。?????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????

          Tip 4.ActiveRecord會盡量的把從數據庫中獲取的值轉換為Ruby的類型(譬如說,假設數據庫字段是 timestamp 類型的,就會返回 Time 對象)。如果你希望得到一個屬性的原始值,可以在屬性名稱后面加上 _before_type_cast.

          Tip 5.Ruby 認為:除了 nil 和 false 之外的所有值都被解釋為 true。所以,如果要查詢一個 boolean 型字段的狀態,就必須在字段名的后面加上一個問號:
          user = User.find_by_name("Dave")
          if user.superuser? # 不可以使用 user.superuser,否則不論數據庫中存儲的是數字 0、字符串 f 還是德語的 N,此條件都將成立。
          ?grant_privileges
          end

          posted on 2006-12-15 09:30 比特鼠 閱讀(292) 評論(0)  編輯  收藏 所屬分類: Ruby on Rails
          主站蜘蛛池模板: 宁远县| 宜黄县| 泾阳县| 梨树县| 苏尼特右旗| 西盟| 洛宁县| 县级市| 南部县| 河曲县| 拜城县| 辽阳市| 金华市| 鹿邑县| 红河县| 迁西县| 繁昌县| 邯郸市| 苗栗市| 金阳县| 彝良县| 通许县| 霍林郭勒市| 二手房| 大厂| 宾川县| 凉城县| 万山特区| 祁阳县| 久治县| 韶山市| 曲阳县| 台前县| 武山县| 建宁县| 阆中市| 徐闻县| 吕梁市| 巴林右旗| 儋州市| 高台县|