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文件生成数据库文件
ActiveRecord Model的方法
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安装相关推荐
- RubyOnRails的安装和eclipse plugin
Windows系统下开发环境的搭建 本文中将介绍如何在Windows操作系统下搭建RoR开发环境. 1.远程安装 a.步骤1:下载并安装Ruby一键安装包 下载最新的Ruby 1.8.4-16一键安装 ...
- centos7安装redmine3.4
前言:安装要求 Ruby解释器 给定Redmine版本所需的Ruby版本是: Redmine版本 支持的Ruby版本 使用Rails版本 4.0 ruby 2.2(2.2.2及更高版本),2.3,2. ...
- CentOS Git服务安装
安装yum源 yum -y install http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm vim ...
- Centos 下安装redmine及设置发送邮件功能
2019独角兽企业重金招聘Python工程师标准>>> 如果自己手动安装redmine及其相关依赖东西会非常多,所以这里使用bitnami redmine一键集成. 首先下载安装包b ...
- 【GitLab】CentOS安装GitLab最佳实践
环境 [root@iZ2851te7e5Z ~]# lsb_release -a LSB Version: :core-4.1-amd64:core-4.1-noarch Distributor ID ...
- centos+gitlab+mysql_centos7安装配置gitlab(使用外部nginx)
1.安装依赖: sudo yum install curl policycoreutils openssh-server openssh-clients sudo systemctl enable s ...
- Windows下安装Redmine
1.搭建Ruby on Rails环境 1. 安装RubyInstaller1.8.7-p330.exe在C盘目录下,并将子目录 bin 的路径加入到 Windows 的 PATH 环 ...
- Ruby On Rails 安装手记
弄了好几天,Ror环境终于搭好了,为了防止以后忘记,少走弯路,特记录下 ============================================= 安装过程 1.安装 rubyinst ...
- Docker Compose方式安装GitLab
文章目录 用Docker Compose方式安装GitLab 前提条件 一键自动化以Docker Compose方式安装GitLab GitLab Docker Compose文件 安装和运行GitL ...
- ruby on rails win下安装
ruby on rails win下安装 发现新的技术ruby on rails,关于他一些介绍就不说了,我说下今天的我的安装过程! 首先是下载 http://rubyforge.org/projec ...
最新文章
- “柔”,“软”,“微”,“弱”何以成为互联网时代的时髦词汇
- LeetCode 922 Sort Array By Parity II 解题报告
- python中的np where_python – np.where在我的熊猫中不起作用
- win7光盘修复计算机在哪,win7如何创建系统还原及系统修复光盘功能应用
- 解决Adobe Animate CC 中文版非中文的BUG
- 各种排序算法总结及C#代码实现
- 给Lisp程序员的Python简介
- php面试题之三——PHP网络编程(高级部分)
- 影响 5000 万开发者,GitHub 与 CSDN 掌舵人对话技术社区未来
- python自动化办公真的好用吗-python如何实现自动化办公?
- python 之简单聊聊类的只读和只写特性
- 常用网络特殊符号大全(含彩色表情符号)
- 联想服务器如何u盘启动盘装系统,联想如何设置u盘启动
- FPGA / IC 设计(一)
- 第五章-2 dns劫持 - Ettercap
- 【刷题打卡】day7-BFS
- 【PHP】`异客塞尔`世界 与 神奇的字符串++
- 批量解压tgz命令 批量解压 解压当前目录下所有的 tgz文件
- #3234. 「POI2019 R1」Pomniejszenie
- RBA验厂辅导,RBA验厂准备过程中有没有比较困难需要留意的地方