• ruby start


    其实很早就想做一个ruby的demo了,主要还是受到一个前同事的影响,说ruby的开发速度是.net的十倍,或许夸张了点,但也不无道理。不管怎样,亲身体验才是最重要的。言归正传,以下是如何搭建基本的ruby开发环境的step by setp记录,适合beginner。

    一、准备环境 首先是需要在电脑上安装ruby的开发环境。我的OS是Cent OS 6.2 有以下三种方式来进行安装:

    • 获取源码进行编译安装
    • 使用第三方工具(例如:RVM、RubyInstaller【适合windows】)
    • 使用包管理工具

    可根据自己的情况选择合适的安装形式,推荐使用1或者2,第三种包管理工具带的ruby版本相对比较旧了,不推荐。

    我选择了获取源码编译安装的方式,开始之前,还需要安装相关的库:

    1,安装相关的库
    yum install zlib zlib-devel sqlite-devel

    2,安装openssl
    rvm pkg install openssl

    具体操作步骤:

    1wget http://ftp.ruby-lang.org/pub/ruby/2.0/ruby-2.0.0.tar.gz
    2tar -zxvf ruby-2.0.0.tar.gz
    3,./configure --prefix=/usr/local --enable-shared --enable-pthread --disable-install-doc --with-opt-dir=/usr/local/lib
    4make
    5make install 

     

    完成后使用 ruby --version测试版本信息,如果一切正常,应该能显示具体的版本信息了。

    二、安装rails框架

    说ruby开发速度快,主要还是因为ruby on rails这个框架,比较好的体现了MVC模式以及“约定胜于配置”原则,以至于后来的asp.net mvc都从中吸取了不少精华。

    1,更新gem源 gem update

    2,修改gem源服务器信息
    gem sources --remove http://rubygems.org/
    淘宝提供的gem镜像,解决源文件部署在amazon S3上在国内访问的问题

    gem sources -a http://ruby.taobao.org gem sources -l
    确保只有淘宝的源

    gem install rails

    3,安装sqlite:

    tar -zxf sqlite-autoconf-3070900.tar.gz
    cd sqlite-autoconf-3070900
    ./configure
    make
    make install

    三、测试rails

    rails new testapp
    
    cd testapp
    
    rails server

    当执行到rails server这步时,提示失败,需要执行bundle install 执行bundle install成功。 再次执行rails server,但还是失败,提示缺少javascript的runtime 按照错误提示安装execjs: gem install execjs 再次执行rails server,仍然失败,提示错误:ExecJS::RuntimeUnavailable,看来还是没有解决。 从网上搜了下解决方案:安装node.js,因node.js本身是基于google chrome的V8引擎,所以应该是带有javascript的runtime的,正好最近也想学下node.js。

    wget http://nodejs.org/dist/v0.10.5/node-v0.10.5.tar.gz 
    
    tar xfv node-v0.10.5.tar.gz 
    
    cd node-v0.10.5 
    
    ./configure 
    
    make 
    
    make install

    安装完node.js后,再次执行rails server,如果如下图所示:

    Image

    则可以通过http://yourhost:3000来访问,会出现一个ruby的demo站点。

    Image  

    到此ruby on rails的demo站点搭建完成,接下来就该开始更深一步的学习了,好吧,就从链接数据库开始...

    版权声明

  • 相关阅读:
    kafka消费者问题
    kubernetes
    Grafana+prometheus+AlertManager+钉钉机器人
    kafka汇总
    java实现顺序表、链表、栈 (x)->{持续更新}
    hadoop细节 -> 持续更新
    drf之组件(认证、权限、排序、过滤、分页等)和xadmin、coreapi
    drf之视图类与路由
    drf序列化与反序列化
    drf之接口规范
  • 原文地址:https://www.cnblogs.com/qiuliang/p/3050396.html
Copyright © 2020-2023  润新知