子在川上曰

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

          Rails學習筆記(3)前四章摘記

          把《應用Rails..》從頭再看了一遍,下面是第一部份(前4章)的筆記

          下載Ruby的網址:http://rubyinstaller.rubyforge.org  檢查:ruby -v
          安裝Rails的命令:gem install rails -include-dependencies 要注意網絡通暢。
          更新Rails的命令: gem update rails
          創建一個名為chensite的項目,命令:rails chensite
          啟動內建的WEB服務器,先進入chensite目錄,再輸入命令:ruby script/server,訪問http://localhost:3000

          -----------------------
          書中都是用文本編輯器來編輯代碼,其實用RadRails這個IDE(Eclipse插件)更方便。
          RadRails下載:http://radrails.sourceforge.net,我用的是radrails-0.7.1-win32.zip,解壓后就可以用了。
          下面講一下它的配置,主要是在首選項窗口里設置。另注:除了配置ruby.exe有擴展名以外, 其他設定都沒有擴展名。


          Mongrel是WEB服務器,這里可不設置。一般是用Apache做前端請求轉發,后端用mongrel做集群,以實現大負荷訪問。




          在Eclipse右下角的Server視圖可以啟動WEB服務器。
          創建一個Controller,在書中是這個命令:ruby script/generate controller say
          Eclipse中的方式則如下圖所示:


          在Eclipse中沒有專門用于rhtml文件的新建項,以普通文件方式創建即可。不過,提供RHTML的編輯器,內含代碼完成助手(Content Assist),代碼提示功能不強,只會提示一些基本的語法流程框架,沒有象JAVA編輯器那種類的方法的提示。


          創建一個say控制器后,將say_controller.rb類如下
          class SayController < ApplicationController
            def hello
              puts 
          "chengang of puts"
              @blogsite
          ="www.chengang.com.cn"
              
          3.downto(1)  do  |count|  #每次減1,從3循環到1 (32、1共三次循環)
                puts count
                puts 
          "#{count} " + @blogsite
              end
              
            end
          end

          hello相當于一個Action,不過要顯示WEB頁面(http://localhost:3000/say/hello )還需要在一個rhtml文件:views/say/hello.rhtml

          <html>
          <head>
              
          <title>Hello,Rails!<title>
          </head>
          <body>
              
          <h1>Hello from Rails! </h1>
              
          <%=Time.now%> <br/><!--now方法不用括號-->
              
          <%=@blogsite%> <!--可以直接使用SayController中的變量-->
              
          <%= link_to "bye bye", :action=>"goodbye"%>
          </body>
          </html>

          。link_to除了action,還可以定義controller,以及action的參數
          。link_to "About", :controller=>"showpage", :action=>"about", :id=>11  則生成的url為 http://.../showpage/about/11
          。如果把上一個的id改為... :name=>"glchengang" ,則生成的url為http://.../showpage/about?name="glchengang"。和前一個url比較得知id是默認參數,不顯示。

          <%=Time.now%> 顯示當前時間
           
          h()方法用于輸出包含%<>等字符

          1.hour.from_now 從現在過去1小時后的時間。數字也是一個對象,也具有方法。

          3.times do  #三次循環
            puts 
          "chengang"
          end


          3.downto(1do |count| #每次減1,從3循環到1 。共三次循環,count是變量
            puts count
          end


          <%= link_to "bye bye", :action=>"goodbye"%> 一個指向當前控制器say的goodbye這個Action的鏈接


          ---------------------------------------
          www.aygfsteel.com對FirFox支持不太好,在編輯文章復制粘貼時,平白彈出一個窗口,多出了兩步麻煩的操作。

          posted on 2007-04-06 19:10 陳剛 閱讀(997) 評論(0)  編輯  收藏 所屬分類: Rails&Ruby

          主站蜘蛛池模板: 正定县| 临安市| 清水县| 康马县| 邹平县| 汾阳市| 阳泉市| 涟源市| 托克逊县| 娱乐| 新泰市| 改则县| 曲松县| 共和县| 大理市| 察雅县| 佛坪县| 南郑县| 亳州市| 哈巴河县| 石棉县| 阿拉善右旗| 舞阳县| 满洲里市| 历史| 武冈市| 依安县| 钟山县| 连山| 云和县| 丽江市| 和林格尔县| 株洲县| 乌苏市| 凌源市| 依兰县| 凤阳县| 绥中县| 留坝县| 海兴县| 清苑县|