﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>BlogJava-&lt;h3 style="font-family: Comic Sans MS"&gt;&lt;font color="#FA1A0A" size="10"&gt;︻┳═一Java&lt;/font&gt;&lt;/h3&gt;-文章分类-Ruby and Rails</title><link>http://www.blogjava.net/rain1102/category/18859.html</link><description>&lt;b&gt;&lt;font color="#3C1435"&gt;08年奋斗目标：&lt;/font&gt;&lt;font color="#F70E0A"&gt;赚钱买个房子！&lt;/font&gt;&lt;/b&gt;</description><language>zh-cn</language><lastBuildDate>Wed, 09 Apr 2008 17:14:25 GMT</lastBuildDate><pubDate>Wed, 09 Apr 2008 17:14:25 GMT</pubDate><ttl>60</ttl><item><title>学习Ruby One</title><link>http://www.blogjava.net/rain1102/articles/191679.html</link><dc:creator>Eric.Zhou</dc:creator><author>Eric.Zhou</author><pubDate>Wed, 09 Apr 2008 14:05:00 GMT</pubDate><guid>http://www.blogjava.net/rain1102/articles/191679.html</guid><wfw:comment>http://www.blogjava.net/rain1102/comments/191679.html</wfw:comment><comments>http://www.blogjava.net/rain1102/articles/191679.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/rain1102/comments/commentRss/191679.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/rain1102/services/trackbacks/191679.html</trackback:ping><description><![CDATA[<p>模块定义：module<br />
类定义：class<br />
方法定义：def, undef<br />
检查类型：defined?<br />
条件语句：if, then, else, elsif, case, when, unless<br />
循环语句：for, in, while, until, next, break, do, redo, retry, yield<br />
逻辑判断：not, and, or<br />
逻辑值和空值：true, false, nil<br />
异常处理：rescue, ensure<br />
对象引用：super, self<br />
块的起始：begin/end<br />
嵌入模块：BEGIN, END (require, include)<br />
文件相关：__FILE__, __LINE__<br />
方法返回：return<br />
别名：alias</p>
<p>局部变量，方法参数和方法名称应该用一个小写字母开头或者用一个下划线开头;<br />
全局变量用美元符作为前缀$;<br />
实例变量使用@开头；<br />
类变量用@@<br />
类名，模块名和常量应该用大写字母开头</p>
<p>Ruby程序代码现在用7位的ACSII码来表示，通过语言扩展来支持EUC，SJIS或UTF-8等8位编码系统。Ruby2.0版本将支持16位的Unicode编码</p>
<p>puts print gets<br />
printf "Number: %4.3f, String:%s", 7.8, "hi!"</p>
<p>数据类型：数字，字符串，数组，哈希表，区间，正则表达式<br />
1..5&nbsp; ---&gt; 1,2,3,4,5;<br />
1...5 ---&gt; 1,2,3,4</p>
<p>a=1; b=1.0; a==b #true&nbsp;比较两个对象的值是否相等<br />
a=1; b=1.0; a.eql?(b) #false 比较两个对象的值以及类型是否相等<br />
a=1.0; b=1.0; a.equal?(b) #false 比较两个对象在内存中的地址是否相同<br />
a=1.0; b=a; a.equal?(b) #true<br />
&lt;=&gt; 比较两个对象的大小，大于，等于，小于 分别返回1，0，－1<br />
===右边的对象是否在左边区间之内，返回true和false<br />
puts (0..9) === 3.14 #true<br />
puts ('a'..'f')==='c' #true<br />
=~用来比较是否符合一个正则表达式，返回模式在字符串中被匹配到的位置，否则返回nil<br />
!~断言不符合一个正则表达式，返回true，false</p>
<p>break,跳出当层循环<br />
next,忽略本次的循环的剩下部分，开始下一次的循环<br />
redo,重新开始循环，还是从这一次开始<br />
retry，重头开始这个循环体</p>
<p>times,upto,downto,each.step<br />
3.times{print 'Hi'} #HiHiHi<br />
1.upto(9) {|i| print i if i&lt;7} #123456<br />
9.downto(1){|i| print i if i&lt;7} #654321<br />
(1..9).each{|i| print i if i&lt;7} #123456<br />
0.step(11, 3){|i| print i} #0369</p>
<p>异常处理begin/end...rescue...ensure...raise&nbsp; retry可以用在rescue中</p>
<p>attr_writer:motherland<br />
相当于<br />
def motherland=(value)<br />
&nbsp;&nbsp;&nbsp; return @motherland = value<br />
end</p>
<p>attr_reader:motherland<br />
相当于<br />
def motherland<br />
&nbsp;&nbsp;&nbsp; return @motherland<br />
end</p>
<p>attr_accessor:motherland 相当于 attr_reader:motherland; attr_writer:motherland</p><img src ="http://www.blogjava.net/rain1102/aggbug/191679.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/rain1102/" target="_blank">Eric.Zhou</a> 2008-04-09 22:05 <a href="http://www.blogjava.net/rain1102/articles/191679.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>活动脚手架功能列表</title><link>http://www.blogjava.net/rain1102/articles/191475.html</link><dc:creator>Eric.Zhou</dc:creator><author>Eric.Zhou</author><pubDate>Tue, 08 Apr 2008 06:02:00 GMT</pubDate><guid>http://www.blogjava.net/rain1102/articles/191475.html</guid><wfw:comment>http://www.blogjava.net/rain1102/comments/191475.html</wfw:comment><comments>http://www.blogjava.net/rain1102/articles/191475.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/rain1102/comments/commentRss/191475.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/rain1102/services/trackbacks/191475.html</trackback:ping><description><![CDATA[活动脚手架参考了Rails自带的脚手架（Scaffold）功能，提供了一个更丰富的通用模式，除了CRUD，还有排序、搜索、分页等等许多功能。这里是一个<a title="功能列表" href="http://activescaffold.com.cn/tutorials/features/" target="_blank">功能列表</a>。<br />
<ul>
    <li>AJAX化的表格界面，可以创建、修改、查看并删除对象。
    <li>自动处理ActiveRecord关联的编辑
    <li>排序、搜索和分页
    <li>支持RESTful <span class="caps">API</span>（包括XML/YAML/JSON）
    <li>支持换肤
    <li>支持扩展
    <li>支持多种浏览器，在Firefox 1+，<span class="caps">IE 6</span>+和Safari 2+通过验证
    <li>与Rails一样遵循<span class="caps">MIT协议</span> License，你可以在你的商业应用中自由使用它 </li>
</ul><img src ="http://www.blogjava.net/rain1102/aggbug/191475.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/rain1102/" target="_blank">Eric.Zhou</a> 2008-04-08 14:02 <a href="http://www.blogjava.net/rain1102/articles/191475.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Ruby on Rails 安装手记</title><link>http://www.blogjava.net/rain1102/articles/188591.html</link><dc:creator>Eric.Zhou</dc:creator><author>Eric.Zhou</author><pubDate>Tue, 25 Mar 2008 13:42:00 GMT</pubDate><guid>http://www.blogjava.net/rain1102/articles/188591.html</guid><wfw:comment>http://www.blogjava.net/rain1102/comments/188591.html</wfw:comment><comments>http://www.blogjava.net/rain1102/articles/188591.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/rain1102/comments/commentRss/188591.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/rain1102/services/trackbacks/188591.html</trackback:ping><description><![CDATA[安装Ruby：<br />
&nbsp;&nbsp;&nbsp; 从 <a href="http://www.ruby-lang.org/en/">http://www.ruby-lang.org/en/</a>&nbsp; 下载 ruby186-26.exe，安装Ruby。<br />
&nbsp;&nbsp;&nbsp; 添加环境变量 ruby186-26\bin 到 path<br />
&nbsp;&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp; 运行 ruby -v 显示版本号，表示安装成功。<br />
<br />
安装Rails：<br />
&nbsp;&nbsp;&nbsp; (1) 远程安装：<br />
&nbsp;&nbsp;&nbsp; 运行 gem install rails --include-dependencies，安装Rails（需要连接网络）。<br />
&nbsp;&nbsp;&nbsp; <br />
&nbsp;&nbsp;&nbsp; (2) 本地安装：<br />
&nbsp;&nbsp;&nbsp; 从 <a href="http://www.rubyonrails.org/">http://www.rubyonrails.org/</a>&nbsp; 下载 rails-2.0.2.gem，安装Rails。<br />
&nbsp;&nbsp;&nbsp; 运行 gem install rails-2.0.2.gem<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;运行 rails -v 显示版本号，表示安装成功。<br />
<br />
使用：<br />
&nbsp;&nbsp;&nbsp; 运行 rails path/to/your/new/application 创建一个新的项目。<br />
&nbsp;&nbsp;&nbsp; 运行 ruby path/to/your/new/application/script/server 启动服务。<br />
<br />
&nbsp;&nbsp;&nbsp;&nbsp;查看<a href="http://localhost:3000">http://localhost:3000</a>成功<br />
&nbsp;&nbsp;&nbsp;&nbsp;<br />
&nbsp;&nbsp;&nbsp; 手工安装非常麻烦，可以从 <a href="http://instantrails.rubyforge.org/">http://instantrails.rubyforge.org/</a>&nbsp; 下载InstantRails，全部搞定。<br />
<br />
<br />
相关目录和路径如下：<br />
<a href="http://rubyforge.org/frs/?group_id=307">http://rubyforge.org/frs/?group_id=307</a> &nbsp;去下载rails <br />
<a href="http://rubyforge.org/projects/activesupport">http://rubyforge.org/projects/activesupport</a> 去下载activesupport <br />
<a href="http://rubyforge.org/projects/activerecord/">http://rubyforge.org/projects/activerecord/</a> &nbsp;去下载activerecord <br />
<a href="http://rubyforge.org/projects/actionpack">http://rubyforge.org/projects/actionpack</a> 去下载actionpack <br />
<a href="http://rubyforge.org/projects/actionmailer">http://rubyforge.org/projects/actionmailer</a> &nbsp;去下载actionmailer <br />
<a href="http://rubyforge.org/projects/aws">http://rubyforge.org/projects/aws</a> &nbsp;去下载actionwebservice <br />
<a href="http://rubyforge.org/projects/rake">http://rubyforge.org/projects/rake</a> &nbsp;去下载rake <br />
<br />
如果是升级，记得最后执行 gem cleanup把原来的老版本清除。<br /><img src ="http://www.blogjava.net/rain1102/aggbug/188591.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/rain1102/" target="_blank">Eric.Zhou</a> 2008-03-25 21:42 <a href="http://www.blogjava.net/rain1102/articles/188591.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>RoR中的分页</title><link>http://www.blogjava.net/rain1102/articles/93996.html</link><dc:creator>Eric.Zhou</dc:creator><author>Eric.Zhou</author><pubDate>Mon, 15 Jan 2007 09:22:00 GMT</pubDate><guid>http://www.blogjava.net/rain1102/articles/93996.html</guid><wfw:comment>http://www.blogjava.net/rain1102/comments/93996.html</wfw:comment><comments>http://www.blogjava.net/rain1102/articles/93996.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/rain1102/comments/commentRss/93996.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/rain1102/services/trackbacks/93996.html</trackback:ping><description><![CDATA[控制层的实现：<br /><br />　　在控制层，分页必须按如下代码实现：<br /><br /><table style="WIDTH: 451px; HEIGHT: 86px" bordercolor="#cccccc" width="451" align="center" bgcolor="#e7e9e9" border="1"><tbody><tr><td>def user_list <br />@user_pages, @users = paginate(:users, :order_by =＞ 'name')<br />end </td></tr></tbody></table><br />　　以上代码通过paginate方法设置的分页器。这个方法有两个参数，第一个参数是要读取数据的表的名子，第二个参数是在取数据时要排序的字段。这个方法返回两个对象，第一个对象@user_pages是分页器对象， 第二个对象 @users 是每一页的记录数。其中@users用来向视图提供要显示的数据。 而@user_pages负责从表中得到数据，然后将这些数据保存在@users中。<br /><br />　　视图层的实现:<br /><br />　　在视图层的RHTML文件中，@users中的数据将被展现给用户。pagination_links()方法可以实现导航的功能。以下是具体的实现代码：<br /><br /><table style="WIDTH: 447px; HEIGHT: 181px" bordercolor="#cccccc" width="447" align="center" bgcolor="#e7e9e9" border="1"><tbody><tr><td>＜table＞ <br />＜tr＞＜th＞姓名＜/th＞＜/tr＞ <br />＜% for user in @users %＞ <br />＜tr＞＜td＞＜%= user.name %＞＜/td＞ <br />＜% end %＞ <br />＜/table＞ <br />＜hr＞ <br />＜%= pagination_links(@user_pages) %＞ <br />＜hr＞ </td></tr></tbody></table><img src ="http://www.blogjava.net/rain1102/aggbug/93996.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/rain1102/" target="_blank">Eric.Zhou</a> 2007-01-15 17:22 <a href="http://www.blogjava.net/rain1102/articles/93996.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item><item><title>Ruby和Rails的一些好网站</title><link>http://www.blogjava.net/rain1102/articles/91152.html</link><dc:creator>Eric.Zhou</dc:creator><author>Eric.Zhou</author><pubDate>Sun, 31 Dec 2006 06:22:00 GMT</pubDate><guid>http://www.blogjava.net/rain1102/articles/91152.html</guid><wfw:comment>http://www.blogjava.net/rain1102/comments/91152.html</wfw:comment><comments>http://www.blogjava.net/rain1102/articles/91152.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.blogjava.net/rain1102/comments/commentRss/91152.html</wfw:commentRss><trackback:ping>http://www.blogjava.net/rain1102/services/trackbacks/91152.html</trackback:ping><description><![CDATA[<p>需要用到的一些书<br />The Ruby Way <br />Programming Ruby 2nd edition <br />Agile Web Development with Rails <br />Best of Ruby Quiz <br />Rails Recipes <br />Enterprise Integration with Ruby <br />Ruby Hacking Guide <br />Ruby In A Nutshell </p>
		<p>
				<a href="http://www.itpub.net/forum61.html">http://www.itpub.net/forum61.html</a>
				<br />里大多有下，重点推荐<br />Programming Ruby 2nd edition <br />Agile Web Development with Rails </p>
		<p>
				<br />一些不错的论坛 及网站<br />国内的<br /><a href="http://railscn.crispynews.com/">http://railscn.crispynews.com/</a><br /><a href="http://www.railscn.com">http://www.railscn.com</a><br /><a href="http://chinaonrails.com">http://chinaonrails.com</a><br /><a href="http://r4rclub.schtuff.com/">http://r4rclub.schtuff.com/</a><br /><a href="http://forum.javaeye.com">http://forum.javaeye.com</a><br /><a href="http://rorwiki.hellopen.net">http://rorwiki.hellopen.net</a></p>
		<p>国外的<br /><a href="http://www.ruby-forum.com/">http://www.ruby-forum.com/</a><br /><a href="http://www.rubyonrailsforum.com/rails-code-questions/">http://www.rubyonrailsforum.com/rails-code-questions/</a><br /><a href="http://rubyforge.org/">http://rubyforge.org/</a><br /><a href="http://www.rubyonrails.org/">http://www.rubyonrails.org/</a><br /><a href="http://www.ruby-lang.org/en/">http://www.ruby-lang.org/en/</a><br /><a href="http://www.webrick.org/">http://www.webrick.org/</a><br /><a href="http://www.yaml.org/">http://www.yaml.org/</a></p>
		<p>blog</p>
		<p>&lt;博客&gt; <br />铁道播客：有诸多视频教程 <br /><a href="http://rorcast.blogger2blogger.com/">http://rorcast.blogger2blogger.com/</a></p>
		<p>my4java的文字博客：有很多教程的译稿、笔记等 <br /><a href="http://my4java.itpub.net/">http://my4java.itpub.net/</a></p>
		<p>cnruby道喜技术日记：众多实例教程 <br /><a href="http://www.hhtong.com/blog1/">http://www.hhtong.com/blog1/</a></p>
		<p>caphe的博客 <br /><a href="/cap">http://www.blogjava.net/cap</a></p>
		<p>Caiwangqin的博客 <br /><a href="http://www.uuzone.com/blog/uu_1115110/">http://www.uuzone.com/blog/uu_1115110/</a></p>
		<p>中文RubyOnRailsWiki<br /><a href="http://rorwiki.hellopen.net/index.p...%A6%96%E9%A1%B5">http://rorwiki.hellopen.net/index.p...%A6%96%E9%A1%B5</a></p>
		<p>关于rails和ajax相结合<br /><a href="http://www.rubynoob.com/">http://www.rubynoob.com/</a></p>
		<p>
				<a href="http://inquirylabs.com/blog/">http://inquirylabs.com/blog/</a>
		</p>
		<p>这个当中有一些介绍<br /><a href="http://www.railscn.com/about704.html">http://www.railscn.com/about704.html</a></p><img src ="http://www.blogjava.net/rain1102/aggbug/91152.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.blogjava.net/rain1102/" target="_blank">Eric.Zhou</a> 2006-12-31 14:22 <a href="http://www.blogjava.net/rain1102/articles/91152.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>