rubyonrails安装
更新源:
sudo gedit /etc/apt/sources.list
替換為:
#網易163的更新源
deb http://mirrors.163.com/ubuntu/ karmic main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ karmic-security main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ karmic-updates main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ karmic-proposed main restricted universe multiverse
deb http://mirrors.163.com/ubuntu/ karmic-backports main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ karmic main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ karmic-security main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ karmic-updates main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ karmic-proposed main restricted universe multiverse
deb-src http://mirrors.163.com/ubuntu/ karmic-backports main restricted universe multiverse
更新源信息
sudo apt-get update
---------------------------------------------------------------
安裝ubuntu編譯環境
sudo apt-get install build-essential
---------------------------------------------------------------
安裝ruby
www.rubyonrails.org下載ruby (ruby-1.8.7-p174.tar.gz)和 Gem(rubygems-1.3.6.tgz) 和rails
安裝ruby依賴庫文件
sudo apt-get install zlib1g-dev libssl-dev libreadline5 libreadline5-dev
下載后進度目錄,運行./configure
然后make (編譯)
然后sudo make install
然后 ruby -v (查看版本)
irb require "openssl" (查看openssl是否安裝正確,返回true正確)
安裝rubygem
sudo ruby setup.rb (到他到目錄安裝GEM)
gem -v (查看版本)
安裝rails
sudo gem install rails (安裝rails)
sudo apt-get install git-core sqlite3 libsqlite3-dev(安裝sqlite和git)
sudo gem install sqlite3-ruby (安裝sqlite和ruby的鏈接)
sudo gem install thin (安裝thin服務器)
sudo apt-get install imagemagick libmagick9-dev (安裝圖片處理程序)
sudo gem install rmagick (安裝ruby圖片處理插件)
git clone badwolf@192.168.1.8:/home/git/snkme.git(從服務器把最新版本取下來)
啟動服務
badwolf@badwolf-desktop:~/workspace/snkme$ ./script/server thin
---------------------------------------------------------------
安裝Gedit插件
插件站: http://github.com/gmate/gmate
1. 添加一個源在源管理里面
ppa:ubuntu-on-rails/ppa
2. Install gedit-gmate package:
$ sudo apt-get install gedit-gmate
---------------------------------------------------------------
ubuntu flash中文亂碼
cd /etc/fonts/conf.d/
sudo gedit ./49-sansserif.conf
<match target=”pattern”>
<test qual=”all” name=”family” compare=”not_eq”>
<string>wqy-zenhei</string>
</test>
<test qual=”all” name=”family” compare=”not_eq”>
<string>wqy-zenhei</string>
</test>
<test qual=”all” name=”family” compare=”not_eq”>
<string>monospace</string>
</test>
<edit name=”family” mode=”append_last”>
<string>wqy-zenhei</string>
</edit>
</match>
---------------------------------------------------------------
sudo gem (ruby的安裝程序)
ctrl+shift+T (新建一個cmd)
---------------------------------------------------------------
版本管理git
git st (查看狀態)
git add . (選擇變更內容)
git diff(查看變更具體內容)
git commit -m '數據庫' (更新到本地版本庫)
git push (提交到服務器)
腳手架常用命令:
-------------------------------------------------
0. 創建一個項目
rails demoshop
-------------------------------------------------
1. 用腳手架創建產品(控制 模型 顯示 數據)
script/generate scaffold product title:string description:text image_url:string
-------------------------------------------------
2. 如果創建錯了銷毀這些(destroy 銷毀 scaffold 腳手架 pronduct產品對象)
script/destroy scaffold pronduct
-------------------------------------------------
3. 來創建一個sqlite的表(必須有上一步到創建)
rake db:migrate
-------------------------------------------------
4. 用sqlite命令來查看當前項目migrate當前版本
sqlite3 db/development.sqlite3 "select version from schema_migrations"
-------------------------------------------------
5. 查看路由情況
rake routes
-------------------------------------------------
6. 數據庫遷移增加一個字段腳手架
script/generate migration add_price_to_product price:decimal
然后執行3的步驟
-------------------------------------------------
7. 調試
script/console
-------------------------------------------------
8. 只創建一個controller的一個action
ruby script/generate controller store index
hreoku.com 版本庫管理方法
1.登錄hreoku.com注冊帳號 badwolf@qq.com *****
2. 登錄郵箱激活
3.sudo gem install hreoku #安裝keroku
4.heroku create rorbet #創建項目 rorbet.hreoku.com
5.ssh-keygen #創建一個ssh密鑰
6.git clone git@heroku.com:rorbet.git #找一個目錄先git一下服務器的版本庫到本地
7.然后在這個目錄添加文件..
8.git st #查看本地版本與服務器之間差別
9.git add . #添加要提交的內容范圍
10.git commit -m “201005120951-first-commit”
11.git push origin master #指定分支 以后就git push
12.heroku logs #查看日志
13.heroku help #查看heroku命令
14.heroku console #運行console
15.heroku rake db:migrate #在heroku運行db:migrate
# 如果你migrate沒問題 跳過16~17步驟
16.rake db:schema:dump #把本地數據庫生成migrate文件
17.heroku rake db:schema:load #把migrate文件生成數據庫文件
class.new 新建
class.find 查詢
class.destroy 刪除
變量查詢
a="hahaha"
Product.find(:all,:conditions=>["title like ?","%#{a}%"])
Product.find(:all,:conditions=>["title like :title",:title=>"%#{a}%"])
Product.find(:all,:conditions=>["title like :title and price>:price",:title=>"%#{a}%",:prcie=>3])
相當
SELECT * FROM "products" WHERE (title like '%a%' and price>3)
字符串查詢
Product.find(:all,:conditions=>{:title=>"a"})
相當
SELECT * FROM "products" WHERE ("products"."title" = 'a')
多條件查詢合并
>> cs = [{:title=>"a",:price=>(1..20),:description=>"hhhhh"}, "title like '%b%'"]
=> [{:price=>1..20, :title=>"a", :description=>"hhhhh"}, "title like '%b%'"]
>> Product.all :conditions=> Product.merge_conditions(*cs)
相當
SELECT * FROM "products" WHERE (("products"."title" = 'a' AND "products"."price" BETWEEN 1 AND 20 AND "products"."description" = 'hhhhh') AND (title like '%b%'))
把條件設置數組
>> conditions = []? #定義一個數組
=> []
>> conditions << ["title like ?", 'a']? #把一個條件加到數組
=> [["title like ?", "a"]]
>> conditions << ["title like ?", 'a']? if params[:title].present? #加一個判斷 非空時加入到數組
include附加查詢(減少N+1次查詢)
LineItem.all :conditions => "products.title => 'a'", :include => :product
jions附加查詢
LineItem.all :conditions => "products.title like '%a%'", :joins => :product
想當
SELECT "line_items".* FROM "line_items" INNER JOIN "products" ON "products".id = "line_items".product_id WHERE (products.title like '%a%')
select查詢
Product.find(:all,:select=>"title,price")
相當
SELECT title,price FROM "products"
readonly只讀查詢
>> p=Product.first
=> #.....
>> p=Product.first(:readonly=>true)
=> #....
>> p.title="xxxxxxxxx"
=> "xxxxxxxxx"
>> p.save #拋出異常
from 指定表名
group 指定分組
limit 指定條數
offset 指定起始數
find_by_sql 直接執行sql語句
獲取字段統計信息
Product.average(:price)
Product.maximum(:price)
Product.minimum(:price)
Product.sum(:price)
Product.count()
動態查詢
Product.find_by_title_and_price("測試",78.9) #只查第一條first 結果:title和price
Product.find_all_by_title_and_price("測試",78.9) #返回數組 結果:title和price
Product.find_or_create_by_title("hahahaha") #查詢并保存
Product.find_or_initialize_by_title("aoiokkok") #查詢,如果沒有初始化
查看日志
tail -f log/development.log
總結
以上是生活随笔為你收集整理的rubyonrails安装的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: VB程序逆向
- 下一篇: 如何正确删除TFS上项目