ruby on rails学习笔记(1)-helloworld

  最近手头比较闲,因为刚完成的系统已经上线,现在主要是在维护阶段,所以想抓紧时间学点新东西,给自己充充电!象我们这些今年刚毕业的应届生,只有扎实的基础知识加上不断的吸取新东西才能站稳脚跟啊!(如果还有出色的口才和人际关系,嘿嘿!那就更爽拉)现在出来混,不容易啊!T.T

  偶一直以为,做为一个好的程序员,起码要精通一门语言,然后能熟练使用多种语言.偶现在用的是java(虽然在学校也学过c,c++之类的,不过忘的也差不多拉...),差不多有一年多的时间,现在也就能应用的份上,要说能自己设计几个好的模式火候还差太远.对于java偶还是满有感情的,不过在java的领域中开源项目巨多,变化也巨快,对于我们这些新手来说真的有点心有余而力不足的感觉,而且现在主流的框架配置文件巨多,到后期不但要维护自己的源代码还的加上一大堆的.xml .properties文件,头大啊!也有可能是本人水平有限吧!后来偶一朋友给偶介绍rails,说用起来挺爽的,相对于java来说,工作量要小不少.那是偶第一次听说rails,时间是06年7月,偶刚刚毕业.

  虽然大半年前就听说这么个好东东拉,可是一直都在外面出差,到处跑,都没什么时间来学习,只是闻其声而不见其人也.不过这样也好,至少加大了对偶的吸引力 ^0^,偶想不光是这个,其他的也都是这样,越神秘的东西,就越想要了解!今年刚过完元旦不久,偶就开始闲下来拉,于是就从网上搜集了一些关于ruby这个动态语言和建构在ruby之上的rails的相关资料,大体上看了看,对rails有了个大体上的了解,下面转几个链接:

Martin上海ruby演讲实录1-3:

http://manager.csdn.net/n/20060616/91726.html

http://manager.csdn.net/n/20060616/91727.html

http://manager.csdn.net/n/20060616/91728.html

csdn上的 博客周刊深度阅读之“Ruby与Java争锋”

http://blog.csdn.net/blogweekly/archive/2006/09/28/1301893.aspx

还有满多的,大家有兴趣的话可以google一下

  学习资料也满多的(前提是你e文足够好,因为大多都是e文)干计算机这行真的是不容易啊!啥都要学.....中文的好象已经出了3本,不过好象没有电子版的,csdn上有连载,但是不全!看来还的自己掏银子落,计算机方面的书贵的要死,随便一本一张老人头就去拉!哎!转2本不错的E文入门教程链接,供大家锻炼下E文,呵呵,不错的说!

《Agile Web Development With Rails》2nd edition Rails圣经 2006年Jolt Award得主

http://www.judgeonline.net/downloads/Agile_Web_Development_With_Rails-Beta.pdf

偶买了这本的中文版,花了偶50大洋,没办法啊,舍不住孩子套不住狼啊!

《Programing Ruby 》ruby的入门读物,学ruby必读

http://www.judgeonline.net/downloads/Programming ruby-2nd.pdf

        言归正传,讲了这么多废话,现在就写写偶运行第一个程序所运到的问题和大家分享下,希望能够对那些运到和我同样错误的朋友提供帮助.

  关于ruby的安装很简单,只要一路next就行.而rails的安装偶是遇到了不少问题.

  代理问题:翻开新买回来的rails教程,按照书上所说的,直接在命令行中输入gem install rails  --include-dependecies命令安装rails,提示安装错误.错误信息如下:ERROR: While executing gem ... (SocketError) getaddrinfo: no address associated with hostname.

试了几次都没有成功,郁闷啊!由于我们公司用的是代理上网,所以估计是这个地方出错了,进入命令行,先输入命令:set http_proxy=http://proxy_ip:port  设置代理

然后再输入:gem install rails --include-dependencies

OK,提示正在更新,不过速度好象很慢,超时是经常的!锻炼耐心的时候来拉!呵呵,一次不行就多试几次,付出总有收获的!小学老师说的!`0`

  如果实在等的不耐烦了,可以用InstantRails ,听说是个不错的东东,啥都有包括数据库和,而且还是绿色版的,不用安装,直接解压就能用!爽!对于新手来说可是个好东西,不必让我们直接去gem那些形形色色的安装程序拉!不过不足的是对于新手来说就少了一次了解安装过程和一些机制的机会拉!不管了,用着再说.

  随便找个目录(目录中不可以包含空格,要不会出错),解压后可以看到一大堆的文件,先别管这些是干啥用的,找到其中的InstantRails.exe文件,这个就是我们所需要的拉!运行该文件后会有个提示界面,选是就对拉;然后就可以看到程序的主界面,其中有2个按钮"Apache"和"MySQL",确保其为"Started"状态.InstantRails 自带了2个应用cookbook和typo是不错的学习例子,建议看看!学一门语言最好的办法就是看别人的代码,偶正在进行中!`0` 偶们可以先让这2在个应用跑起来看看效果,然后在写自己的第一个rails程序.点I 这个按钮,选Configure > Windows Hosts file. 配置主机映射,加上

127.0.0.1 www.mycookbook.com
127.0.0.1 typo
这2行,然后保存退出.然后选择Rails Applications > Manage Rails Applications... 会弹出当前rails应用窗口,勾上想要运行的应用,点Start with Mongrel 按钮,弹出一个窗口显示当前开启服务的进程,等到出现Mongrel available的提示后就搞定拉!打开浏览器,输入HTTP://www.mycookbook.com 访问cookbook应用,输入HTTP://typo访问typo应用.搞定,可以看看效果拉!

  注意:如果机器上原来装了mysql,并且mysql还是打开的话会提示错误,错误信息如下:MySQL port(3306)is used by "" (mysqld-nt.exe)!在这种情况按照上面的步骤访问应用会提示:

#28000Access denied for user 'root'@'localhost' (using password: NO)
拒绝访问,对于这种情况只需要将原来打开的mysql服务停掉就好!

 

  好了,到这里偶的运行环境算是搞定拉,下面在InstantRails下新建个HelloWorld小试一下!

还是InstantRails.exe这个文件,选择Rails Applications > Open Ruby Console Window选项打开ruby控制台.

1. 新建应用 输入:rails helloworld建立一个新的应用,这个时候在<%InstantRails%>\rails_apps目录下会生成一个helloworld的文件夹,这就是我们的新应用.

2.新建控制器,输入:ruby script/generate controller hello建立一个新的控制器,这个文件在<%InstantRails%>\rails_apps\HelloWorld\app\controllers目录下,文件名是hello_controller.rb

3.建立action,打开hello_controller.rb文件,添加action代码,添加后形式如下:

ruby 代码
  1. class HelloController < ApplicationController   
  2.   def world   
  3.   end  
  4. end  

4.建立视图(rhtml),在<%InstantRails%>\rails_apps\HelloWorld\app\views\hello\目录下建立world.rhtml文件,并添加内容如下:

  1. <html>  
  2. <head><title>Hello</title></head>  
  3. <body><h1>Hello World<h1>  
  4. Time:<%=Time.now%>  
  5. </body>  
  6. </html>  
rhtml 代码

5.启动应用,同启动cookbook一样,通过Start with Mongrel 按钮来启动,也可以通过cmd命令行来启动,进入<%InstantRails%>\rails_apps\HelloWorld目录,输入:ruby script/server 启动应用!

搞定,到这里偶的第一个rails应用就完成了,打开浏览器,输入 http://localhost:3000/hello/world

  注意:因为InstantRails 是自解压的,所以没有环境变量的配置,可以直接在开始里面打开cmd运行以上命令,但是有可能会出现问题.还是推荐通过Rails Applications > Open Ruby Console Window来输入相关命令!

 

这是偶第一次写技术性的文章,不足的地方多多,请各位前辈多多指教!^0^

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值