Ruby on rails 入门胡来版 (一) 准备工作 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
jacob
V2EX    Ruby on Rails

Ruby on rails 入门胡来版 (一) 准备工作

  •  
  •   jacob 2014-09-23 17:02:30 +08:00 6326 次点击
    这是一个创建于 4113 天前的主题,其中的信息可能已经有所发展或是发生改变。
    批爱吃皮无力,爪哇企业看你。 五霸七雄闹外泊,各家都有神作。 给他哈勃再火,榜上提名没你。 加班熬夜是自己,说甚天下第一。 

    一 开场介绍

    比划之前,先来给各位大爷介绍一下。

    Ruby on Rails,简称Rails,是一个使用Ruby语言写的开源Web用框架,它是严格按照MVC结构开发的。它努力使自身保持简单,来使实际的用开发时的代码更少,使 用最少的配置。

    Rails的设计原则包括「不做重的事」(Don't Repeat Yourself)和「例於定」(Convention Over Configuration)
    –维基百科

    这我们就知道了,rails来自ruby这个动态语言,ruby来自韩国,不!日本!!作者叫松本行弘。江湖人称Matz。而rails最初的作者是DHC,是DHH。David Heinemeier Hansson 大卫……好了,闲言碎语你不要急,咱们表一表好汉rails,光练不说傻把式,光说不练假把式,连说带练才是好把式,绝不是王婆卖瓜,自卖自夸,我们请亲身使用者讲一下:

    开发速度特别快。Rails 帮你解决了大量问题。引入了 Migration, asset pipeline 等概念非常超前……。

    by lightening from v2ex.com 

    原因很简单:
    1. Rails是十年来最优秀的Web开发框架,至今仍然是。
    ……这是最尖端的Web框架。……
    by swachian from rails-china.org

    恭松两位使用者,时间关系,我就不贴更多的了,“ 这小子拿我的话做宣传,竟然不请示我,哼。”

    二 环境配置

    “俗话说,不是一家人,不进一家门…”,慕容女表拉了下裙角。“住口,你身为我武当弟子,竟去学他们的邪门外道,若不是”说到这,顿了下,“若不是看在你这几年在江湖上宣传我武当精神的份上,我定将你清理门户…”
    开发rails,最好在osx或linux下。Windows不符合rails情。本指南基于ubuntu,使用osx或者其他linux发行版的也没什么问题,除了配置稍有不同以外,不影响大局。

    《第四套rails环境配置操》

    “为什么是第四套?一二三呢?”揪式折样资滴。冲石开式号嘛

    踏步,走~

    下载Ubuntu: http://www.ubuntu.com/download/desktop
    U盘安装: http://down.tech.sina.com.cn/content/51138.html
    安装方法: http://www.ithome.com/html/soft/62262.htm

    编辑器推荐:sublime text 3 http://www.sublimetext.com/3

    第一节:项目配置运动
    我们使用一个叫rvm的工具,它可以让不同的项目使用不同版本的ruby。
    在你的主目录下.rvm/gems里的文件夹,保存了各个工程用的文件。

    $ sudo apt-get update
    $ sudo apt-get install curl

    curl 是命令行文件传输工具,我们用他下载rvm。

    $ \curl -L https://get.rvm.io | bash -s stable –ruby

    第二节 ruby运动
    下面使用rvm安装ruby,目前版本是2.1.2.

    $ rvm get stable –autolibs=enable
    $ rvm install ruby
    $ rvm –default use ruby-2.1.2

    第三节 nodejs运动
    安装node.js

    $ sudo apt-get install nodejs

    第四节 插件运动
    gem就是ruby的插件,rails就是一个gem,加速gem安装,安装gem时不安装文档。

    $ echo “gem: –no-document” >> ~/.gemrc

    安装nokogiri,很多gem都依赖它。这种方式安装的是全局安装的,后面几节安装的都是工程特定的gem。

    gem install nokogiri

    第五节 新建运动
    创建默认的工程

    $ mkdir myapp
    $ cd myapp
    $ rvm use ruby-2.1.2@myapp –ruby-version –create
    $ gem install rails
    $ rails new

    第六节 示例运动
    使用rails composer初始化工程,rails composer 就是几个配置好的工程。你创建时可以选择。

    $ mkdir myapp
    $ cd myapp
    $ rvm use ruby-2.1.2@myapp –ruby-version –create
    $ gem install rails
    $ rails new . -m https://raw.github.com/RailsApps/rails-composer/master/composer.rb

    第七节 更改配置运动
    更改gemset配置
    工程文件和gemset已经创建完毕之后,仍然可以更改gemset配置

    $ rvm use ruby-2.1.2@myapp –ruby-version –create

    如果gemset已经有了,可以不加后面的两个参数。
    根据情况你可能要重新安装gemfile里设置的rails

    $ gem install rails
    $ bundle install

    第八节 数据库运动
    数据库
    rails默认使用SQLlite数据库,不需要额外的配置,如果想用其他的数据库,创建工程时可以加一个参数。

    $ rails new myapp –database=postgresql

    rails默认支持mysql, oracle, postgresql, sqlite3, frontbase, ibm_db, sqlserver, jdbcmysql, jdbcsqlite3, jdbcpostgresql, jdbc.

    早操完毕,奔向食堂。

    p.s.
    lz最近刚学rails,如果不做笔记,感觉要成浆糊。所以就写了这么个东西。水平不够,扯淡来凑。让诸位见笑了。

    第 1 条附言    2014-09-24 21:56:38 +08:00
    修改:
    第五节的新建工程命令是:
    $ rails new .
    文中少了句点(表示当前目录)

    这里是我博客:http://segmentfault.com/blog/brann
    没什么好东西,学习讲究方式方法,我想快速提高水平,那么我想问下,挖掘机技术哪家强?
    16 条回复    2015-09-02 17:15:04 +08:00
    klam
        1
    klam  
       2014-09-23 17:20:53 +08:00
    PrideChung
        2
    PrideChung  
       2014-09-23 17:37:49 +08:00
    竟然不发去我大Ruby China?
    g8287694
        3
    g8287694  
       2014-09-23 17:50:29 +08:00
    赞个 觉得相当不错
    loryyang
        4
    loryyang  
       2014-09-23 17:58:58 +08:00
    哥们你有博客吗?如果喜欢写,去弄个博客吧,挺好的
    raychar
        5
    raychar  
       2014-09-23 18:01:45 +08:00
    文末不带博客链接的味道不太对啊。
    jint
        6
    jint  
       2014-09-23 19:21:12 +08:00 via Android
    想法不错,文笔很烂。
    hcymk2
        7
    hcymk2  
       2014-09-23 21:03:24 +08:00
    最早接触ror的时候被一分页插件搞崩溃了,之后就放弃了。
    dcty
        8
    dcty  
       2014-09-23 21:29:44 +08:00
    结尾没看到挖掘机的广告,不开森.
    nine
        9
    nine  
       2014-09-23 22:43:17 +08:00
    哈 支持
    dalang
        10
    dalang  
       2014-09-23 23:29:33 +08:00
    v2ex 支持 markdown 了?
    darcy
        11
    darcy  
       2014-09-24 01:46:32 +08:00 via iPhone
    有点意思 楼主继续
    leopku
        12
    leopku  
       2014-09-24 10:48:29 +08:00
    不错,帮顶
    jacob
        13
    jacob  
    OP
       2014-09-24 21:51:53 +08:00
    @PrideChung 水平不够,那里太专业。。。
    @loryyang 谢谢

    @raychar 这,下篇带,以后只在那更新了,原因我上面说了
    @hcymk2 我刚开始,还没碰到分页- -

    @dcty

    @dalang 只有编辑时才有,很奇怪。

    有几个支持的,我就很高兴了,我是初学的,主要是写给自己的,我想要写,不如轻松点写,索性发到这里了,但因为水平和文笔不好,在论坛里发可能不一定合适,接下来的我就发到自己的博客了。
    hcymk2
        14
    hcymk2  
       2014-09-25 08:59:28 +08:00
    @jacob 那是比较早的版本了,现在估计没那么麻烦了。
    lijingyi2011
        15
    lijingyi2011  
       2014-12-06 23:05:54 +08:00
    我最近也刚学,看到这个很有喜感啊
    Debugs
        16
    Debugs  
       2015-09-02 17:15:04 +08:00 via Android
    准备学,想问问楼主, window 下怎么配置, MyEclipse 可以添加插件吗
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     2636 人在线   最高记录 6679       Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 26ms UTC 06:47 PVG 14:47 LAX 22:47 JFK 01:47
    Do have faith in what you're doing.
    ubao msn snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86