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

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

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

    子在川上曰

      逝者如斯夫不舍晝夜
    隨筆 - 71, 文章 - 0, 評論 - 915, 引用 - 0
    數(shù)據(jù)加載中……

    Rails學(xué)習(xí)筆記(4)數(shù)據(jù)庫配置及頁面讀取

    開始在MySQL中創(chuàng)建數(shù)據(jù)庫,分別用于:開發(fā)、測試、產(chǎn)品

    create database chensite_development;
    create database chensite_test;
    create database chensite_production;

    在開發(fā)庫中建表和插入數(shù)據(jù):
    use chensite_development;

    drop table 
    if exists titles;
    create table titles (
     id             
    int           not null auto_increment,
     name           varchar(
    100)  not null,
     url            varchar(
    200)  default NULL,
     parent_id      
    int           default 0,
     expanded       tinyint(
    1)    default 0,
     level          tinyint(
    1)    default 0,
     primary key (id)
    )ENGINE
    =InnoDB DEFAULT CHARSET=utf8;

    LOCK TABLES titles WRITE;
    INSERT INTO titles VALUES(
    1,'AAAAAAAAA','http:\\www.AAAAAAAAA.com.cn',0,0,1);
    INSERT INTO titles VALUES(
    2,'BBBBBBBBB','http:\\www.BBBBBBBBB.com.cn',0,0,1);
    INSERT INTO titles VALUES(
    3,'CCCCCCCCC','http:\\www.CCCCCCCCC.com.cn',0,0,1);
    INSERT INTO titles VALUES(
    4,'關(guān)于','http:\\www.DDDDDDDDD.com.cn',0,0,1);

    INSERT INTO titles VALUES(
    5,'EEEEEEEEE','http:\\www.EEEEEEEEE.com.cn',2,0,2);
    INSERT INTO titles VALUES(
    6,'FFFFFFFFF','http:\\www.FFFFFFFFF.com.cn',2,0,2);
    INSERT INTO titles VALUES(
    7,'GGGGGGGGG','http:\\www.GGGGGGGGG.com.cn',2,0,2);
    INSERT INTO titles VALUES(
    8,'HHHHHHHHH','http:\\www.HHHHHHHHH.com.cn',2,0,2);


    UNLOCK TABLES;

    配置數(shù)據(jù)庫連接:  config\database.yml,主要是給連接三個數(shù)據(jù)庫的root用戶輸入密碼,在輸入密碼時要注意:"password:"和密碼"123456"之間要有一個空格,密碼之后不要有空格,否則無法啟動WEB服務(wù)。

    # MySQL (default setup).  Versions 4.1 and 5.0 are recommended.
    #
    # Install the MySQL driver:
    #   gem install mysql
    # On MacOS X:
    #   gem install mysql 
    -- --include=/usr/local/lib
    # On Windows:
    #   gem install mysql
    #       Choose the win32 build.
    #       Install MySQL and put its 
    /bin directory on your path.
    #
    # And be sure to use 
    new-style password hashing:
    #   http:
    //dev.mysql.com/doc/refman/5.0/en/old-client.html
    development:
      adapter: mysql
      database: chensite_development
      username: root
      password: 
    123456
      host: localhost

    # Warning: The database defined as 
    'test' will be erased and
    # re
    -generated from your development database when you run 'rake'.
    # Do not set 
    this db to the same as development or production.
    test:
      adapter: mysql
      database: chensite_test
      username: root
      password: 
    123456
      host: localhost

    production:
      adapter: mysql
      database: chensite_production
      username: root
      password: 
    123456
      host: localhost

    接下來創(chuàng)建一個能夠顯示數(shù)據(jù)庫數(shù)據(jù)的頁面。Rails是MVC模式的編程方式。
    首先創(chuàng)建數(shù)據(jù)模型:app\models\title.rb
    class Title < ActiveRecord::Base
    end
    • 數(shù)據(jù)庫titles(小寫復(fù)數(shù)),文件名title.rb(小寫單數(shù)),類名Title(大寫單數(shù))
    • 大寫方式--單詞第一個字母為大寫。小寫方式--每個單詞用下劃線分開。
    • 模型類中不必定義屬性,它會自動以數(shù)據(jù)庫字段為屬性。
    • set_table_name "table1" 定義對應(yīng)的表
    • set_primary_key "name" 改默認(rèn)的ID主鍵為name,不過以后name字段就用成id,如:o.id="chengang"

    創(chuàng)建視圖:views\homepage\index.rhtml,顯示出title表所有記錄的id和name值

    <html>
    <body>
        
    <h1>ChenGang's Site</h1>

    <% for title in @titles %>

        
    <%= title.id %>__<%= title.name %><br/>

    <% end %>
    </body>
    </html>

    視圖中用到的@titles變量來自于我們自己創(chuàng)建的如下控制器: app\controllers\homepage_controller.rb。Rails中控制器中的變量可以在視圖中使用(這是否會產(chǎn)生變量污染的問題呢,還待以后再體驗(yàn))

    class HomepageController < ApplicationController
      def index
        @titles 
    = Title.find(:all)
      end
    end
    • Homepage和視圖的目錄名homepage相關(guān)
    • index方法和視圖的文件名index.rhtml相關(guān)
    • 用index可以省略訪問地址中的action(action默認(rèn)為index action)

    最后啟動Web服務(wù)器后訪問:http://localhost:3000/homepage 

     

    posted on 2007-04-09 14:36 陳剛 閱讀(2017) 評論(0)  編輯  收藏 所屬分類: Rails&Ruby

    主站蜘蛛池模板: 亚洲日韩国产精品乱| 日韩午夜免费视频| 亚洲精品国偷自产在线| 免费无码AV一区二区| 青青青国产色视频在线观看国产亚洲欧洲国产综合 | 国产美女无遮挡免费网站| 国产亚洲精品bv在线观看| 成人毛片18女人毛片免费视频未| 天天爽亚洲中文字幕| 成人毛片免费视频| 美女尿口扒开图片免费| 亚洲国产成人爱av在线播放| 日韩a毛片免费观看| 亚洲午夜久久久久久久久久 | 久久久国产精品无码免费专区| 亚洲成色www久久网站夜月| 久久这里只精品热免费99| 91精品国产亚洲爽啪在线影院| 无码人妻精品中文字幕免费东京热| 亚洲乱码在线播放| 在线免费观看一级毛片| 最好2018中文免费视频| 亚洲免费观看视频| 免费能直接在线观看黄的视频| 亚洲真人无码永久在线观看| 免费一级毛片一级毛片aa| 成在线人视频免费视频| 亚洲美女免费视频| 性做久久久久免费观看| 中文字幕的电影免费网站| 91久久亚洲国产成人精品性色| 久久久久国色AV免费观看性色| 国产精品亚洲一区二区三区久久| 亚洲裸男gv网站| 老汉精品免费AV在线播放| 亚洲日韩精品无码专区加勒比☆| 亚洲精品国产电影| 日韩在线播放全免费| 免费手机在线看片| 亚洲乱码在线观看| 国产亚洲精品自在线观看|