Time of Update: 2018-12-05
ruby寫的指令碼運行更快,決定使用ruby來弄。相比和我一樣做電商網站的都有機會用到:擷取某個頁面中的所有URL下面指令碼另存新檔:URLScan.rb,用法:通過cmd命令,進入該指令碼路徑執行ruby URLScan.rb url指令碼中data.scan()可以放入你想要在對應頁面尋找的其他Regex,如data.scan(/<a href="(.*?)">/) ,即所有的URL下面例子中時擷取所有的產品連結URLScan.rbrequire
Time of Update: 2018-12-08
到此,我們這個購物車的實現就完成了,下面我們可以利用ruby裡的Rdoc來給我們的程式產生文檔,和dotnet,java,python等一樣,Rdoc可以把我們代碼裡類和方法聲明前面的注釋提取出來產生文檔。 對於我們的depot程式,我們在rails的命令列裡運行rake appdoc命令, 完成以後,可以在depot\doc目錄下看到剛才產生的文檔,開啟index.html,看到下面的內容:
Time of Update: 2018-12-08
也許你已經注意到了,在我們前面的代碼中,資料庫定義裡都使用了一個integer型的欄位id作為主鍵,這是Active Record的一個約定。 或許你要問,為什麼不用訂單編號或者某個有意義的列來作為主鍵呢?使用id作為主鍵有一個很重要的原因,就是如果使用具有內在格式的主鍵的話,隨著時間推移,有可能其中的規則也會變化。例如,使用ISBN號碼來給book表做主鍵,畢竟ISBN號碼是唯一的,但是,有可能當一本書寫完後,美國的出版業已經發展了並且在所有的ISBN號碼後又附加了一位元字。
Time of Update: 2018-12-05
這幾天一直在看Agile web development with rails這本書。看書之前想到了下面幾個問題,需要在書中尋找:如何進行輸入validate,比如必須,數字,日期,範圍,怎麼做一般的邏輯檢查? 如何改變輸入的預設形態? 比如datetime的預設形態是:yyyy-mm-dd hh-mm,怎麼使用yyyy-mm-dd? password的設定,怎麼加密? 下拉選擇框怎麼實現? 有沒有masterpage? session , cookie怎麼使用? 如何遷移頁面?
Time of Update: 2018-12-08
Ruby語言中的String是mutable的,不像java、C#中的String是immutable的。比如 複製代碼 代碼如下:str1="abc" str2="abc" 在java中,對於字面量的字串,jvm內部維持一張表,因此如果在java中,str1和str2是同一個String對象。而在Ruby中, str1和str2是完全不同的對象。同樣,在java中對於String對象的操作都將產生一個新的對象,而Ruby則是操縱同一個對象,比如: 複製代碼 代碼如下:str="abc"
Time of Update: 2018-12-08
前面一節的 Fruit 類有兩個實變數,分別表述水果的類型和狀態.直到為這個類寫了一個定製的inspect方法,我們方才瞭解它不會對一個缺乏屬性的水果做出合理的解釋.幸運的是,Ruby提供了一種允許實變數總是被初始化的方法. initalize方法 當Ruby建立一個新對象時,它總是會尋找一個名為 initialize 的方法並執行它.因此,我們可以簡單通過一個initialize方法向實變數中加入預設值,這樣一來, inspect方法就有東西可說了. ruby> class Fruit
Time of Update: 2018-12-08
迭代器並不是Ruby發明的.它廣泛地運用於各種物件導向語言.在Lisp中也有,只是不這麼叫罷了.儘管如此,迭代器的概念並不為許多人熟悉,因此我們將在此做較為詳細的介紹. 你知道,動詞 iterate 的意思是做同一件事許多遍,因此,iterator就是用來將同一件事做許多次的東西. 當我們寫代碼時,我們需要各種環境下的迴圈.在C裡,我們用for或者while.比如, char *str; for (str = "abcdefg"; *str != '\0'; str++) { /*
Time of Update: 2018-12-05
關鍵字:Ruby On Rails ,InstantRails,Windows,入門,教程一直想嘗試Ruby On Rails,但是因為對apache,mysql都不熟,對Rails的環境搭建更是沒信心,所以一直沒有開始,從知道了InstantRails後,終於在windows上搭建了Ruby On Rails開發環境,開始了Rails的學習。現在從最基礎的知識開始,一邊讀著《Agile Web Development with
Time of Update: 2018-12-05
#代碼來源:http://rubyer.me/blog/917順便學習 Ruby的4種閉包:blocks, Procs, lambdas 和 Methods。#firstclass Array def iterate! self.each_with_index do |n, i| self[i] = yield(n) yield(n) end endendarray = [1, 2, 3, 4]array.iterate! do |x| x **
Time of Update: 2018-12-05
初學RUBY時,一看各種稍微複雜一點的代碼時很容易被RUBY各種約定的表示方法搞暈,這整理一下
Time of Update: 2018-12-06
kokko 的 windows平台下Ruby on Rails環境搭建windows xp 下使用ruby on rails 1 安裝ruby,win環境下有Ruby One-Click Installer包, 為http://www.ruby-lang.org/en/downloads/ , 下完後,點擊安裝,一直點next, i agree,選擇安裝路徑,(我的安裝目錄是d:\ruby) 然後一路next 最後finish,安裝完成。 運行cmd, 輸入ruby -v
Time of Update: 2018-12-07
1 、 break 跳出當層迴圈 2 、next 忽略本次迴圈的的剩餘部分,開始下一次迴圈 3 、redo 重新開始迴圈,還是從這一次開始 4 、retry 重頭開始這個迴圈體 5 、$array<< value 將 value 作為數組的一個元素加入數組 $array 中 6 、attr_writer :username 相當於 def username=(value)
Time of Update: 2018-12-06
Ruby的字句構造:1:變數2:注釋3:嵌入文檔4:保留字Ruby目前的實現使用的是ASCII字元集。能夠識別大寫和小寫字母。除了變數和一部分直接量的中間,可以在任意地方加入空格和注釋,空格、定位字元、垂直定位字元、backspace、斷行符號符、分行符號、換頁符。當代碼換行繼續寫的時候,除了空格,其它一律解釋為單獨語句。(譯者註:即在代碼寫的太長,想換行時中間只能加空格,否則會出錯)<1>變數:例:foobarruby_is_simpleRuby的變數名可以使用字母或者底線開始和結
Time of Update: 2018-12-06
Ruby支援數組以及Hash,數組和Hash都是通過索引訪問的,所不同的是數組通過數字索引,而Hash的索引可以是任何對象,所以數組訪問速度更快(直接定位),而Hash則更加靈活,搜尋元素速度更快(Hash演算法定位索引,無需遍曆)。Ruby裡面比較有特點的是,數組與Hash都可以容納不同的對象,因為這是Ruby語言所決定的(非強型別語言,單根派生自Object)數組的一個常用方法是<<
Time of Update: 2018-12-06
Ruby中比較特殊的是module和block.module有命名空間的作用 可以將類,方法,和常數組織在一起module還有mixin的方法,可以在class內部include一個module來實現混入一個module裡的執行個體方法sample:Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->module MSample PI = 1
Time of Update: 2018-12-07
原文地址:http://www.linuxidc.com/Linux/2010-12/30380.htmUbuntu 更新源裡內建有Ruby和Rails,但是都不是最新版,Ruby版本大概還有1.9.1,Rails的版本卻只有2.3.5,嚴重落伍,所以只好自己下載最新版原始碼編譯安裝。1. 準備安裝時使用的庫$ sudo apt-get install gcc g++ build-essential libssl-dev libreadline5-dev zlib1g-dev
Time of Update: 2018-12-07
對象和屬性我們建立的Song對象有一個內部狀態(如歌曲title和artist)。這個狀態對於其它對象是私人的——其它對象不能訪問一個對象的執行個體變數。一般的,這是件好事。這保證了對象的一致性。然而,一個完全封閉的對象是沒什麼用的——你能建立它,卻不能使用它。你通常定義一些方法讓你調用或者操作對象的狀態,使用對象和外部世界進行互動。這些可見的部分叫做屬性。對於我們的Song對象,我們要做的第一件事是需要能查看它的title和artist(這樣我們可以在歌曲播放時顯示它們)和播放時間(我們能把它
Time of Update: 2018-12-07
共同點:都是用來螢幕輸出的。不同點:puts 輸出內容後,會自動換行(如果內容參數為空白,則僅輸出一個分行符號號);另外如果內容參數中有轉義符,輸出時將先處理轉義再輸出p 基本與puts相同,但不會處理參數中的轉義符號print 基本與puts相同,但輸出內容後,不會自動在結尾加上分行符號s = "aaaa\nbb\tbb"p sp "****************"puts sp "****************"print
Time of Update: 2018-12-07
gem 打包: gem build xxx.rb gem 安裝: gem install xxx.rb 例如: 運行->CMD->轉到需要打包的檔案夾下->gem build install.rb instal.rb代碼 代碼 Code highlighting produced by Actipro CodeHighlighter
Time of Update: 2018-12-07
毫不例外,和所有其他的開源項目一樣,如果你想進入Ruby on rails的世界,會發現異常的的艱難,文檔很少,而且很零散,下載下來的檔案缺乏基本的說明,本人的親身體驗就是一個典型例子,不廢話了,現在開始介紹:一、安裝環境<windows>Ruby on rails網站:http://www.rubyonrails.org/ 1、在這裡下載Ruby 1.8.6 http://rubyforge.org/frs/?group_id=167 其中已經包含rubygems