Archive for the ‘ruby on rails教程’ Category

TextMate 运行Ruby代码片段 视频

星期二, 08月 19th, 2008
这部影片将告诉您如何在textmate运行bash或ruby代码片段,以创造有意义的默认值为片段占位符。示例种,它使用的文件名( tm_filename )来创建一个默认的类别名称。
  


TextMate Snippets running Ruby from Dr Nic on Vimeo.

457个ruby on rails视频展示

星期五, 08月 8th, 2008

      网址是:http://www.bestechvideos.com/category/development/ruby/

    这里目前为止有457个Ruby on rails方面的视频,其中有许多ruby on rails视频教程,ruby on rails开发项视频,还有介绍影片,非常值得大家去看看

irb交互式ruby shell

星期二, 08月 5th, 2008

irb所一个帮助你交互式进入ruby程序并即看到结果的ruby模块,irb是从命令行方式运行的。开始执行之后,irb显示一个提示符并等待输入。
1: 在提示符后,你可以键入Ruby代码。irb包括一个Ruby的解析器,因此它知道语句尚未结束。这时,提示符会变成一星号。你可以通过键入exit或quit,或者通过输入一个文件结束符号(如果没有设置IGNORE_EOF模式)来退出irb。

loveker@loveker-laptop:~$ irb
irb(main):001:0> 1+2
=> 3
irb(main):002:0> 3 +
irb(main):003:0* 4
=> 7
irb(main):004:0> quit
loveker@loveker-laptop:~$

2:如果你的Ruby安装支持readline,可以使用irb的完成功能。在加载之后,当你在irb提示符后键入表达式时,“完成功能”改变了TAB键的含义。当你在词的中间按下TAB键时,irb会查找所有在此刻有意义的候选完成。如果只有一个候选,irb将会将会自动处理它。如果多于一个的选择,则irb最初什么也不做。不过,如果你再次按下TAB键,它会显示一个当前有效的完成列表。
3子会话
irb支持多个、并发的会话。当前会话只有一个;其他的在被激活前处于休眠状态。在irb内输入irb命令会创建一个子会话,输入jobs命令列出所有的会话,输入fg则激活一个大定的休眠会话。
4:子会话与邦定
如果当你创建自会话时指定了一个对象,它会成为帮定中self的值。这所体验对象的一种便捷的方式。
5命令
在irb提示符下,你可以输入任何有效的ruby表达式并查看结果。你还可以使用下面的任何命令来控制irb会话。
exit quit irb_exit irb_quit
退出irb的会话活子会话
conf context irb_context
显示当前的配置。通过调用conf的方法来修改配置
cb irb_change_binding
创建并进入一个信的邦定
jobs irb_jobs
列出irb的子会话
fg n irb_fg n
切换到指定的irb子会话,n可能是下列之一
kill n irb_kill n
杀死一个irb子会话

使用wxRuby进行GUI开发

星期二, 08月 5th, 2008

wxWidgets是一个成熟的跨平台GUI工具箱,它使用本地GUIwidgets,使得wxRuby也可以跨平台使用。
项目主页:http://wxruby.rubyforge.org/wiki/wiki.pl
下载地址:http://rubyforge.org/frs/?group_id=35

一、Installing wxRuby2
原文:
http://wxruby.rubyforge.org/wiki/wiki.pl?Installation

wxruby最新的版本是wxruby2,但这实际上还是一个预览版,更稳定的版本是0.6.0
但不管了,我们要乐于尝试新的东西,安装wxRuby2最简单的办法是使用[rubygems], 如果你的机器上已经安装了rubygems:

1、gem install wxruby2-preview
等上一会儿,rubygems会显示wxruby相关的gems列表,选择一个与你的平台相符的。
然后rubygems会用一点时间下载gem… …
2、装好之后你一定迫不及待的想运行一个ruby写的gui来看一下是什么样子,这儿有很多例子与gems一起被安装在你的ruby目录下,假定你的ruby在C盘下面,那么例子的路径如下(用unix与linux都是高手,不用我说太多废话吧):
C:\ruby\1.8.x\lib\gems\1.8\gems\wxruby2-preview-xxx-x.x.x\samples.
好,先运行一下来看一下吧, 转到命令行下面,输入下面的命令:

ruby -rubygems C:\ruby\1.8.x\lib\gems\1.8\gems\wxruby2-preview-xxx-x.x.x\samples\calendar\calendar.rb
哈哈,看到了吧
3、DIY欲望特别强烈的unixer&linuxer可能希望从源码来编译wxruby,请参考上面附上的原文

二、开始写我们的自己的第一个基于ruby的GUI程序
原文:
http://wxruby.rubyforge.org/wiki/wiki.pl?Getting_Started
请留意:这个例子是在windows xp下面实现的,在unix/linux下面应该也没有问题,但某些细节可能有些差异。

1、开门见山吧,直接写第一个程序,先别拿那些概念来烦你
Java代码

  1. #require "wxruby" # wxruby 0.6.0 
  2.  # OR 
  3.  require "wx" # wxruby2 
  4.  include Wx  
  5.  
  6.  class MinimalApp < App 
  7.  def on_init 
  8.        Frame.new(nil, -1, "The Bare Minimum").show() 
  9.    end 
  10.  end 
  11.  
  12. MinimalApp.new.main_loop

2、解释一下,开头的引入,我们上面安装wxruby的时候,选择是wxruby2,所以应该注释掉第一行,直接使用
Java代码

  1. require "wx"

就可以了
如果你选择的版本是0.6.0,那么你应该使用
Java代码

  1. 1. require "wxruby"

3、这一行

  1. class MinimalApp < App

很多ruby coder应该很熟悉了。
每个用wxruby写的代码文件中都应该包含一个继续了App的类。它负责程序的入口及gui事件的处理(好像是java的main()是不是?)
下面的

  1. def on_init

定义了一个方法,这个方法从App继承,你必须用自己的代码来覆盖它。
在这个例子中,我们自己的 on_init()方法创建了一个框,并且显示出来。

4、事实上现在的代码已经可以执行了,你切换到代码所在的目录下面:
ruby -rubygems minimal_app.rb

如果没有意外的话,应该显示出一个框,虽然什么都没有,但我们也感到很高兴 :)

5、好,再详细说一下

  1. Frame.new(nil, -1, "The Bare Minimum").show()

这段代码:

Frame.new() 调用了Frame这个类的构造器。
第一个参数nil,表示要构造的Frame是没有父窗口的,如果有的话,应该在这儿传送。
第二个参数 -1,这是一个标识,这个标识的作用放到后面再说吧
第三个参数”The Bare Minimum”, 这是Frame的标题,并且会显示在任务栏上
第四个参数在本例中省略了,应该类似于这样”Point.new(100,100)”,定义了Frame在桌面上出现的位置.
第五个参数在本例中省略了,应该类似于这样”Size.new(600,480)”,定义Frame的初始大小
第六个参数也省略了,是关于窗体类似,默认的类型是”DEFAULT_FRAME_STYLE”,关于这个参数更多东西,后面再了解吧。
好,你可以试一下这个有更多初始参数的Frame:
Frame.new(nil, -1, "The Bare Minimum", Point.new(300,300), Size.new(800,100)).show()

6、最后,

  1. MinimalApp.new.main_loop

创建一个App的实例,并调用它的mailloop方法来显示GUI,这个方法其实做了很多事,不再详细说了。

7、好,现在总结一下,我们一共做了这么几步:

require “wxruby”
include Wx
创建一个继承 App的类
覆盖一个方法 on_init()
创建一个实例
调用main_loop() 方法

三、有了一个大致的了解后,读一下这个吧:
http://wxruby.rubyforge.org/wiki/wiki.pl?Frames_(Part_1)
没有力气再翻译了。

ubuntu下git安装与使用笔记

星期一, 08月 4th, 2008

GIT 是用于 Linux 内核开发的版本控制工具。与常用的版本控制工具 CVS, Subversion 等不同, 它采用了分布式版本库的方式,不必服务器端软件支持,使源代码的发布和交流极其方便。 Git 的速度很快,这对于诸如 Linux kernel 这样的大项目来说自然很重要。 Git 最为出色的是它的合并跟踪(merge tracing)能力。

安装:

第一步:sudo apt-get install git git-core 来安装GIT程序,或者到新立得软件包里面 输入 git然后安装。

第二步:如果你已经安装好git那么通过下面命令来更新版本库。
git clone git://git.kernel.org/pub/scm/git/git.git
第三步:创建一个版本库git-init-db
创建一个 Git 版本库是很容易的,只要用命令 git-init-db 就可以了

$ mkdir gittutorcn
$ cd gittutorcn
$ git-init-db

这样,一个空的版本库就创建好了,并在当前目录中创建一个叫 .git 的子目录。你可以用 ls -a 查看一下,并请注意其中的三项内容:
一个叫 HEAD 的文件,我们现在来查看一下它的内容:

$ cat .git/HEAD

现在 HEAD 的内容应该是这样:

ref: refs/heads/master

我们可以看到,HEAD 文件中的内容其实只是包含了一个索引信息,并且,这个索引将总是指向你的项目中的当前开发分支。
一个叫 objects 的子目录,它包含了你的项目中的所有对象,我们不必直接地了解到这些对象内容,我们应该关心是存放在这些对象中的项目的数据。
一个叫 refs 的子目录,它用来保存指向对象的索引。
具体地说,子目录 refs 包含着两个子目录叫 heads 和 tags,就像他们的名字所表达的意味一样:他们存放了不同的开发分支的头的索引, 或者是你用来标定版本的标签的索引。
(more…)

ubuntu开发环境一定得装build-essential

星期日, 08月 3rd, 2008

今天看到一篇关于ruby on rails环境搭建,开头第一句就是(Ubuntu的使用者,请记住
$ sudo apt-get install build-essential
↑一定得作)
原来linux操作系统上面开发程序 光有了gcc 是不行的
它还需要一个 build-essential软件包
作用是提供编译程序必须软件包的列表信息

也就是说 编译程序有了这个软件包
它才知道 头文件在哪 才知道库函数在哪
还会下载依赖的软件包 最后才组成一个开发环境
安装的命令就所 sudo apt-get install build-essential

  1. 正在读取软件包列表... 完成
  2. 正在分析软件包的依赖关系树       
  3. 读取状态信息... 完成             
  4. 将会安装下列额外的软件包:
  5.   g++ g++-4.2 libstdc++6-4.2-dev
  6. 建议安装的软件包:
  7.   g++-multilib g++-4.2-multilib gcc-4.2-doc libstdc++6-4.2-dbg
  8.   libstdc++6-4.2-doc
  9. 下列【新】软件包将被安装:
  10.   build-essential g++ g++-4.2 libstdc++6-4.2-dev
  11. 共升级了 0 个软件包,新安装了 4 个软件包,要卸载 0 个软件包,有 0 个软件未被升级。
  12. 需要下载 3979kB 的软件包。
  13. 操作完成后,会消耗掉 15.0MB 的额外磁盘空间。
  14. 您希望继续执行吗?[Y/n]

按y键就可以安装好了。

Rails应用HAML插件教程PDF下载

星期五, 08月 1st, 2008

HAML的作者Hampton认为:RoR作为一个革命性的Web开发框架,但是它的模板系统却依然延续了旧世界(ASP,PHP,JSP)的风格,这实在是让人难以接受,于是就有了HAML。
HAML相比RHTML最大的优点就是结构更清晰,代码更优美,并且生成页面完全兼容XHTML,下面就让我们通过一个例子来看看HAML是如何工作的吧:

http://www.fs2you.com/files/3e7f26d7-5fa7-11dd-ac45-0014221b798a/

rails使用SQLite轻量级数据库

星期五, 08月 1st, 2008

SQLite 是个轻量级的数据库程序,在netbean上写rails又不想装mysql好重哦,第一个想到的就是SQLite,基本上 sqlite 就是一个 command-line 程序而已,再加上一资料档(即一个资料库)。

要在Rails中使用,Windows 下首先去 SQLite 网站下载安装文件 跟 DLL文件,即 sqlite3.exe 跟 sqlite3.dll,放到 C:/ruby/bin 下。FreeBSD的话,执行 /usr/ports/databases/sqlite3/make install。

接着安裝 sqlite for Ruby gem,执行 gem install sqlite3-ruby,Windows 下选择 win32 ,FreeBSD下选ruby 的版本。

ubuntu系统的话直接在 新立得软件包管理器里,安提示操作就可以完成。

最后设定最database.yml :

development:
adapter: sqlite3
dbfile: db/dev.db

test:
adapter: sqlite3
dbfile: db/test.db

production:
adapter: sqlite3
dbfile: db/prod.db

然后执行你写好的Migrations 即可把数据库建立出來。

如果你想要 SQLite 的 GUI 管理介面,试试 SQLite Database Browser,也是一个文件而已,不需要安裝。

修改ruby on rails默认3000端口为80

星期五, 08月 1st, 2008

1:如果你是用webrick来启动的话,在启动时加一個参数即可,如下例:
ruby script/server webrick -p 802

2:如果您是windows用户并且使用InstantRails服务器来启动,在启动你项目的时候你可以设置端口号

打开configure starup mode 然后修改port端口就OK了

ubuntu下搭建ruby on rails环境

星期二, 07月 1st, 2008

安装ruby 如果拿不准最好是用新立得软件包来安装,也可以下载ruby源码来编译安装

sudo apt-get install ruby

sudo apt-get install libzlib-ruby rdoc ri irb ruby1.8-dev

安装RubyGems

sudo apt-get install rubygems

sudo gem update –system

执行一下gem,提示一个错误:

/usr/bin/gem:23: uninitialized constant Gem::GemRunner(NameError)

解决方法:sudo gedit 打开/usr/bin/gem文件,在require ‘rubygems’前加require ‘rubygems/gem_runner’,保存后OK。

安装Rails

sudo gem install rails –include-dependencies

于是,通过rails *** 便可以建立Rails工程了!

安装jre

sudo apt-get install sun-java6-jre sun-java6-plugin sun-java6-fonts

安装radrails

http://nchc.dl.sourceforge.net/sourceforge/radrails/radrails-0.7.0-linux-gtk.tar.gz 解压直接可用

配置RadRails
点击 应用程序 -> 编程 -> radrails 启动 RadRails。
点击菜单 windows -> preferences 进入设置
点击左面的 Rails -> Gems -> Rails ,再点击右边的 Add 按钮,增加一个 Rails 路径: Name 输入 Rails ,Path 输入 /usr 点击 ok 确定。
同样点击左面的 Rails -> Gems -> Rake ,再点击右边的 Add 按钮,增加一个 Rake 路径: Name 输入 Rake ,Path 输入 /usr 点击 ok 确定。
再点击左面的 Ruby -> Installed Interperters ,再点击右边的 Add 按钮,增加一个 Ruby 的位置: Name 输入 Ruby ,Location 输入 /usr/bin/ruby 点击 ok 确定。
再点击左面的 Ruby -> Ri/rdoc ,输入 RDoc path: /usr/bin/rdoc 和 Ri path: /usr/bin/ri
点击右下脚的 OK 按钮,保存配置,设置完成。

Pages: 1 2 Next