Time of Update: 2015-07-02
標籤:想邊自己寫ruby代碼,邊部署隨時能夠到處查看,heroku網域名稱又不友好,速度在國內又慢。於是乎想起來capistrano,於是學起 ...capistrano 一點入門認知https://www.evernote.com/shard/s6/sh/72a2b7c8-d531-4efc-9e16-ac82af2a92b7/e54fca8a9e7014ad87c79e7a7a5538c4capistrano
Time of Update: 2015-07-13
標籤:1、使用者模型(1)資料庫遷移Rails預設使用關聯式資料庫儲存資料,資料庫中的表有資料行組成,每一行都有相應的列,對應資料屬性。把列名命名為相應的名字後,ActiveRecord會自動把他們識別為使用者物件的屬性。$ rails generate controller Users new #產生使用者控制器和new動作,控制器名是複述Users$ rails generate model User name:string email:string #產生使用者模型,模型名是單數User$
Time of Update: 2015-07-11
標籤:Ruby和其他物件導向的語言一樣,使用類來組織方法,然後執行個體化類,建立對象。1、構造方法使用雙引號是字串的字面構造方法,也可以使用“具名構造方法”,即在類名上調用new方法>> s="foobar">> s.class=> String>> s=String.new("foobar")>> s=="foobar"=> true>> a=Array.new([1,2,3])=> [1,2
Time of Update: 2015-07-05
標籤:1、微博模型如所示:2、建立微博資源,命令如下:$ rails generate scaffold Micropost content:text user_id:integer #產生微博資源$ bundle exec rake db:migrate #執行遷移,更新資料庫,使用建立的資料模型3、微博內容的限制(1)限制微博長度在app/models/micropost.rb中class Micropost
Time of Update: 2015-07-04
標籤:一句話概括,就是class可以執行個體化module不可以別的都一樣 關於繼承的一點區別class是使用<作為繼承的關鍵字,只支援單繼承module是使用include來做執行個體繼承(執行個體化的時候動態功能插入),extend做類繼承(可以理解為static繼承) module的應用情境作為namespace,裡面放一般的const或者自己的class作為mixin,放通用方法,別的類裡面直接include或者extend以後使用 class一般作為
Time of Update: 2015-07-03
標籤:1、ruby中的整數、浮點數、字串之間的相互轉換ruby的整數、浮點數、字串的類均提供了to_i,to_f,to_s三個方法,分別用於轉換成整數、轉換成浮點數、轉換成字串。2、數組的遍曆例1:a=[‘a‘,‘b‘,‘c‘]a.each {|x| puts x}例2:ps=["EMSD","XIO","DPAD","ISD","DSSD","ASD","VCE","RSA","IIG","N/A"]ps.each{|x| InnovationProduct.create(:bu=>x,
Time of Update: 2015-07-03
標籤:如何在 OS X 中安裝 ruby 軟體包下載連結: http://pan.baidu.com/s/1mgMil5I 密碼: tiqg 安裝http://brew.sh/1. 先安裝 brew(命令列執行)ruby -e "$(curl -fsSL
Time of Update: 2015-06-29
標籤:Today I finally got ruby debugging working in Eclipse. Below are the major setup steps involved, as well as some problems one might encounter along the way. 1. Install DLTK pluginTo make Eclipse a Ruby IDE, one popular plugin to
Time of Update: 2015-06-28
標籤:1、雲端開發環境,Cloud9(https://ide.c9.io/)。這個開發環境預先安裝好了Rails開發所需要的大多數軟體,包括Ruby、RubyGems和Git,需要自己安裝Rails。 (1)安裝rails:$gem install rails -v 4.1.6 (2)建立項目:$rails _4.1.6_ new hello_app hello_app的目錄結構如下所示:各個目錄的內容及含義如下:(3)修改Gemfile,執行如下語句: $bundle install(
Time of Update: 2015-06-28
標籤:1、目標:掌握MVC和REST、產生器、遷移、路由、嵌入式Ruby 本書涉及Rails,Ruby語言,Rails預設使用的測試架構(MiniTest),Unix命令列,HTML,CSS,少量的JavaScript,以及一點SQL。2、示範應用: hello_app(1.3節) toy_app(第2章) sample_app(第3章到第12章)3、Ruby on
Time of Update: 2015-06-27
標籤:rubyreturn,break,next 這幾個關鍵字的使用都涉及到跳出範圍的問題,而他們的不同 則在於不同的關鍵字跳出去的目的範圍的不同,因為有代碼塊則導致有一些地方需要格外注意。return常用方式通常情況下的return語句和大家理解的意思是相同的。 def m1 param if param == 1 return ‘returned 1‘ end ‘returned default
Time of Update: 2015-06-26
標籤:有時候,我們需要伺服器能控制遠程伺服器做一些事情,同時穩定靠譜,不會突然掛掉什麼的。那麼ruby就是極好的工具啦。# encoding: utf-8#!/usr/bin/ruby# encoding: utf-8# 連接埠 1990# 瀏覽器訪問:http://127.0.0.1:1990/hello/passwordrequire ‘sinatra/base‘require ‘json‘requir
Time of Update: 2015-06-25
標籤:https://github.com/sstephenson/rbenvCheck out rbenv into ~/.rbenv.$ git clone https://github.com/sstephenson/rbenv.git ~/.rbenvAdd ~/.rbenv/bin to your $PATH for access to the rbenv command-line utility.$ echo
Time of Update: 2015-06-19
標籤:`return`,`break`,`next` 這幾個關鍵字的使用都涉及到跳出範圍的問題,而他們的不同 則在於不同的關鍵字跳出去的目的範圍的不同,因為有代碼塊則導致有一些地方需要格外注意。***return***常用方式通常情況下的`return`語句和大家理解的意思是相同的。```Rupy def m1 param if param == 1 return ‘returned 1‘ end ‘returned default
Time of Update: 2015-06-11
標籤:項目地址: ruby-prof 在上一篇 Ruby 中的 Profiling 工具中,我們列舉了幾種最常用的 Profiler,不過只是簡單介紹,這一次詳細介紹一下 ruby-prof 的使用方法。 ruby-prof 是比較強大的,支援 cpu,記憶體使用量,對象分配等等的效能分析,而且提供了很多友好的輸出格式,不僅僅是有基於文字,html 的格式,還能輸出 graphviz 格式的 dot 檔案,以及適用與 KCacheGrind 的call tree格式, 其實這個格式是基於
Time of Update: 2015-06-11
標籤:本來做了一個並發抓取,以為Ruby1.9以後添加的Fiber是類似於golang那種,可以實現並發運行,可是發現效率沒有提高,為了確認Fiber是不是在並發執行,於是我做了一個這樣的測試代碼。首先搞一個php檔案:<?php$i = intval(isset($_GET[‘i‘]) ? $_GET[‘i‘] : (!empty($argv[1]) ? $argv[1] : 0));if
Time of Update: 2015-06-10
標籤:語言本身 Ruby語言支援文法層級的系統,架構,甚至語言本身的方法複寫,一般叫做元編程(meta programming), 此基礎之上還有一些術語為mixin,方法的動態定義,運行時類改寫等等,這些技術和機制可以讓語言本身就能實 現其他語言需要位元組碼才能實現的功能,例如探針需要hook HttpRequest中的request方法,就可以通過下面的方式實現: class HttpRequest def request_new puts ‘before request‘
Time of Update: 2015-05-11
標籤:一、常見異常異常名常見原因怎樣拋出RuntimeErrorraise拋出的預設異常raiseNoMethodError對象找不到對應的方法a=Oject.newa.jackmethodNameError解譯器碰到一個不能解析為變數或方法名的標識符a=jackIOError讀關閉的流,寫唯讀流,或類似的操作STDIN.puts("不能寫入")Errno::error與檔案IO相關的一類錯誤File.open(-10)TypeError方法接受到它不能處理的參數a=3+"abc"Argumen
Time of Update: 2015-05-11
標籤:ruby的lambda跟 proc是差不太多,感覺就像一個“變數方法”,或者有點像C/C++的宏,可以在ruby方法、或者類中定義一個簡單通用的方法,隨時可以調用 例如 back = -> {redirect_to new_project_path + "?domain=" + domain} 然後 back.call
Time of Update: 2015-05-21
標籤:(1)新增gem to Gemfile ,then bundle installgem ‘easy_captcha‘, git: ‘https://github.com/phatworx/easy_captcha.git‘gem ‘rmagick‘(2)after bundle executerails g easy_captcha:install運行完這句話,可以看到app/controllers/application_controller.rb