- 浏览: 265576 次
-
文章分类
- 全部博客 (395)
- Tech (0)
- [随笔分类]心情 (95)
- [随笔分类]技术 (112)
- [随笔分类]管理心得 (13)
- [随笔分类]Code SOP (5)
- [随笔分类]望图知意 (11)
- [网站分类]1.首页原创精华.NET区(包含架构设计、设计模式)(对首页文章的要求:原创、高质量、经过认真思考并精心写作) (8)
- [随笔分类]重构代码 (1)
- [随笔分类]童童 (2)
- Program (1)
- [随笔分类]看你知道不知道 (1)
- [网站分类]4.其他技术区 (31)
- [网站分类]3.非技术区(技术之外的文章,但不要涉及任何政治内容) (21)
- [网站分类]9.求职招聘区(个人求职、企业招聘) (0)
- [随笔分类]昨日关注 (15)
- [网站分类]6.读书区(技术书籍阅读心得、书籍推荐) (3)
- [随笔分类]一步一个脚印 (2)
- [网站分类]网站管理区(网站管理方面的疑问、建议、意见, 寻求管理员帮助) (1)
- [网站分类]2..NET新手区(用于发表不合适发表在首页的.NET技术文章,包括小经验、小技巧) (3)
最新评论
这本书看了一段时间,一直没有上手,今天刚才北京回来,新的项目需要提供一个原型,感觉比较适合ROR的开发方式,决定把《Agile Web Development with Rails》中的例子,走一遍,看一下开发的效果。
由于以前很少做WEB程序,做的也基本上是改,而且也很少使用MySql数据库,因此在调试的过程中,的确遇到了很多低级的错误,记录下来,提个醒吧,希望对大家有点帮助。
第1~5章
安装Ruby
下载地址:http://rubyinstaller.rubyforge.org
Mysql管理工具:ems sql manager 2005
下载和安装Ruby和MySql还是比较简单的,由于书中没有提到Mysql的一些管理,最好还是在Google上查看写资料,这样上手能更好一点。
在ROR中常用命令的需要注意的问题
大小写
ruby中所有的命令中,命令动词不区分大小写,但是参数则区分大小写
例如 Ruby –v和ruby –v都可以执行,但是ruby –V就不可以正确执行了。
显示Ruby的版本的命令
ruby –v
执行成功后屏幕显示如ruby 1.8.5 <2006-12-15 patchlevel 12> [i386-mswin32]
解释:ruby的版本为1.8.5 的mswin32版本
显示RubyGems版本
gem --version
显示为但前版本如0.9.2
RubyGems是一个方便而强大的Ruby程序包管理器( package manager),类似RedHat的RPM.它将一个Ruby应用程序打包到一个gem里,作为一个安装单元。
更新Rails
gem update rails
可以自动更新本地的Rails,并依次提示如下更新,需要用户确认
Activesupport
Activerecord
Actionpack
Actionmailer
Actionwebservice
更新Rails是很重要的,这个命令也很简单,程序的升级和维护也是十分方便的。
显示帮助
ruby –h
gem –help
创建应用程序
在命令行依次中执行
E:
CD Code
rails test
会在e:\Code目录中创建一个test目录,系统会在该目录中创建该应用程序的所有目录。
启动Webrick服务
进入到应用程序所在目录,执行ruby script/server即可。
例如:
E:\
CD code
CD Test
ruby script/server
正常执行后会有如下显示
=> Booting WEBrick...
=> Rails application started on http://0.0.0.0:3000
=> Ctrl-C to shutdown server; call with --help for options
[2007-03-13 11:08:52] INFO WEBrick 1.3.1
[2007-03-13 11:08:52] INFO ruby 1.8.5 (2006-12-25) [i386-mswin32]
[2007-03-13 11:08:52] INFO WEBrick::HTTPServer#start: pid=3232 port=3000
表示服务已经正常运行。
终止服务在CMD窗口执行 Ctrl-C即可。
创建一个控制器
ruby script/generate controller 控制器名称
例如 ruby script/generate controller Say
http://localhost:3000/
该地址会列出关于Ruby的一些文档和帮助
语法举例
编写action
class SayController < ApplicationController
def hello
@time=Time.now
end
end
RHTML-动起来
<html>
<head>
<title>Hello,Rails!</title>
</head>
<body>
<h1>Hello from Rails!</h1>
<li>Addition:<%= 1+2 %></li>
<li>Concatenation:<%= "cow"+"boy" %></li>
<li>Time in one hour:<%= 1.hour.from_now %></li>
<% 3.times do %>
Ho!<br/>
<% end %>
<% 3.downto(1) do |count| %>
<%= count %> <br/>
<% end %>
EMail=<%= h("Ann & Bill <frazers@isp.email>") %>
</br>
It is now <%= Time.now() %>
</body>
<html>
有意思的是数字1也是对象,存在很多的属性和方法。
另外< > 要紧跟着 %,否则系统会认为是错误的。
另外%也要紧跟着=号,否则也会报错。
链接到另外的网页
<%= link_to "hello", :action => "hello" %>
第一个参数指向超链接文本,第2个参数告诉Rails如何生成超链接
:Action是Ruby的一个符号
常见问题
RHTML中文乱码
RHTML和RB文件应该保存成UTF-8的格式,否则中文显示为乱码,下边为网上的一些解决办法,我试验了一下反而觉得不好用。
(转)
Ruby on Rails 学习:解决中文乱码问题
初学Rails,简单的做了一个例子,发现存在中文问题。
大致中文问题归类如下:
1、页面无法显示中文,产生中文乱码
2、Mysql数据库采用utf8后,页面采用utf8,数据库保存是乱码,但页面显示正常。
3、时间格式在页面上的中文显示产生乱码。
打开:application.rb:修改代码如下显示:
1 class ApplicationController < ActionController::Base
2 before_filter :set_charset
3 def set_charset
4 @headers["Content-Type"] = "text/html; charset=utf-8"
5 end
6 end
同时对页面(*.rhtml)上进行增加编码控制:
<meta http-equiv="Content-type" content="text/rhtml; charset=utf8" />
同时在保存页面时,进行编码转换成utf8格式。
做完以上工作的话,利用mysql数据库客户端工具Navicat查看数据库,你会发现数据库中保存的中文数据会出现乱码,因此需要进一步处理:
1、建数据库时采用utf8编码进行建库,同时建表或者导表时要注意采用utf8编码。
2、采用Navicat连接数据库时在Advanced Settings中选择Encoding编码为utf8,同时取消Use MySQL character set的默认选项,再进行连接。
进行以上设置,将会在数据库中显示出正常的中文。同时页面上显示也会是中文,但你会发现对于时间的显示上仍然存在一些小问题。因此在输出时间时需要进行(original_date.strftime("%Y/%m/%d"))转换格式。
第6章
MySql
启动Mysql命令
Mysqld
安装Mysql为服务
Mysqld-nt –install 安装
Mysqld-nt –remove 卸载
执行MySql脚本
mysql -h 服务器 -u 用户 -p密码 <sql脚本
数据库脚本
CreateDatabase
create database depot_development;
create database depot_test;
create database depot_production;
grant all on depot_development.* to 'test'@'localhost';
grant all on depot_test.* to 'test'@'localhost';
grant all on depot_production.* to 'prod'@'localhost' identified by 'mysql';
CreateTable
drop table if exists products;
create table products(
id int not null auto_increment ,
title varchar(100) not null,
description text not null,
img_url varchar(200) not null,
price decimal(10,2) not null,
primary key (id)
);
这个是书中的脚本,觉得有点问题,大家试试看吧。
配置数据库
修改config/database.yml文件内容
development:
adapter: mysql
database: depot_development
username: root
password: mysql
host: localhost
test:
adapter: mysql
database: depot_test
username: root
password: mysql
host: localhost
production:
adapter: mysql
database: depot_production
username: root
password: mysql
host: localhost
在调试的过程中,总是说/usr/lib/ruby/1.8/yaml.rb:133:in `load': syntax error on line 16, col 2:这个错误,经过Google后才知道,所有的:后边必须有一个空格,否则就报错,真是晕。
创建脚手架
ruby script/generate scaffold Product Admin
Product代表模型名称,采用大小写混合的方式
Adimin代表控制器名称,采用大小写混合的方式
这些就是今天的试验了,总算弄出来,例子中的真确界面,程序也是正确执行了,感觉上手还是比较快的,在使用中发现的问题在网络上基本上都可以查到,耽误时间的地方主要是因为不熟悉ROR和MySqL上面了,还有就是ROR的一些默认配置文件中的空格问题,刚开始的时候地区很蒙,呵呵,剩下等更加详细的使用了,到此第6章,还是没有完,差一点,明天来。
由于以前很少做WEB程序,做的也基本上是改,而且也很少使用MySql数据库,因此在调试的过程中,的确遇到了很多低级的错误,记录下来,提个醒吧,希望对大家有点帮助。
第1~5章
安装Ruby
下载地址:http://rubyinstaller.rubyforge.org
Mysql管理工具:ems sql manager 2005
下载和安装Ruby和MySql还是比较简单的,由于书中没有提到Mysql的一些管理,最好还是在Google上查看写资料,这样上手能更好一点。
在ROR中常用命令的需要注意的问题
大小写
ruby中所有的命令中,命令动词不区分大小写,但是参数则区分大小写
例如 Ruby –v和ruby –v都可以执行,但是ruby –V就不可以正确执行了。
显示Ruby的版本的命令
ruby –v
执行成功后屏幕显示如ruby 1.8.5 <2006-12-15 patchlevel 12> [i386-mswin32]
解释:ruby的版本为1.8.5 的mswin32版本
显示RubyGems版本
gem --version
显示为但前版本如0.9.2
RubyGems是一个方便而强大的Ruby程序包管理器( package manager),类似RedHat的RPM.它将一个Ruby应用程序打包到一个gem里,作为一个安装单元。
更新Rails
gem update rails
可以自动更新本地的Rails,并依次提示如下更新,需要用户确认
Activesupport
Activerecord
Actionpack
Actionmailer
Actionwebservice
更新Rails是很重要的,这个命令也很简单,程序的升级和维护也是十分方便的。
显示帮助
ruby –h
gem –help
创建应用程序
在命令行依次中执行
E:
CD Code
rails test
会在e:\Code目录中创建一个test目录,系统会在该目录中创建该应用程序的所有目录。
启动Webrick服务
进入到应用程序所在目录,执行ruby script/server即可。
例如:
E:\
CD code
CD Test
ruby script/server
正常执行后会有如下显示
=> Booting WEBrick...
=> Rails application started on http://0.0.0.0:3000
=> Ctrl-C to shutdown server; call with --help for options
[2007-03-13 11:08:52] INFO WEBrick 1.3.1
[2007-03-13 11:08:52] INFO ruby 1.8.5 (2006-12-25) [i386-mswin32]
[2007-03-13 11:08:52] INFO WEBrick::HTTPServer#start: pid=3232 port=3000
表示服务已经正常运行。
终止服务在CMD窗口执行 Ctrl-C即可。
创建一个控制器
ruby script/generate controller 控制器名称
例如 ruby script/generate controller Say
http://localhost:3000/
该地址会列出关于Ruby的一些文档和帮助
语法举例
编写action
class SayController < ApplicationController
def hello
@time=Time.now
end
end
RHTML-动起来
<html>
<head>
<title>Hello,Rails!</title>
</head>
<body>
<h1>Hello from Rails!</h1>
<li>Addition:<%= 1+2 %></li>
<li>Concatenation:<%= "cow"+"boy" %></li>
<li>Time in one hour:<%= 1.hour.from_now %></li>
<% 3.times do %>
Ho!<br/>
<% end %>
<% 3.downto(1) do |count| %>
<%= count %> <br/>
<% end %>
EMail=<%= h("Ann & Bill <frazers@isp.email>") %>
</br>
It is now <%= Time.now() %>
</body>
<html>
有意思的是数字1也是对象,存在很多的属性和方法。
另外< > 要紧跟着 %,否则系统会认为是错误的。
另外%也要紧跟着=号,否则也会报错。
链接到另外的网页
<%= link_to "hello", :action => "hello" %>
第一个参数指向超链接文本,第2个参数告诉Rails如何生成超链接
:Action是Ruby的一个符号
常见问题
RHTML中文乱码
RHTML和RB文件应该保存成UTF-8的格式,否则中文显示为乱码,下边为网上的一些解决办法,我试验了一下反而觉得不好用。
(转)
Ruby on Rails 学习:解决中文乱码问题
初学Rails,简单的做了一个例子,发现存在中文问题。
大致中文问题归类如下:
1、页面无法显示中文,产生中文乱码
2、Mysql数据库采用utf8后,页面采用utf8,数据库保存是乱码,但页面显示正常。
3、时间格式在页面上的中文显示产生乱码。
打开:application.rb:修改代码如下显示:
1 class ApplicationController < ActionController::Base
2 before_filter :set_charset
3 def set_charset
4 @headers["Content-Type"] = "text/html; charset=utf-8"
5 end
6 end
同时对页面(*.rhtml)上进行增加编码控制:
<meta http-equiv="Content-type" content="text/rhtml; charset=utf8" />
同时在保存页面时,进行编码转换成utf8格式。
做完以上工作的话,利用mysql数据库客户端工具Navicat查看数据库,你会发现数据库中保存的中文数据会出现乱码,因此需要进一步处理:
1、建数据库时采用utf8编码进行建库,同时建表或者导表时要注意采用utf8编码。
2、采用Navicat连接数据库时在Advanced Settings中选择Encoding编码为utf8,同时取消Use MySQL character set的默认选项,再进行连接。
进行以上设置,将会在数据库中显示出正常的中文。同时页面上显示也会是中文,但你会发现对于时间的显示上仍然存在一些小问题。因此在输出时间时需要进行(original_date.strftime("%Y/%m/%d"))转换格式。
第6章
MySql
启动Mysql命令
Mysqld
安装Mysql为服务
Mysqld-nt –install 安装
Mysqld-nt –remove 卸载
执行MySql脚本
mysql -h 服务器 -u 用户 -p密码 <sql脚本
数据库脚本
CreateDatabase
create database depot_development;
create database depot_test;
create database depot_production;
grant all on depot_development.* to 'test'@'localhost';
grant all on depot_test.* to 'test'@'localhost';
grant all on depot_production.* to 'prod'@'localhost' identified by 'mysql';
CreateTable
drop table if exists products;
create table products(
id int not null auto_increment ,
title varchar(100) not null,
description text not null,
img_url varchar(200) not null,
price decimal(10,2) not null,
primary key (id)
);
这个是书中的脚本,觉得有点问题,大家试试看吧。
配置数据库
修改config/database.yml文件内容
development:
adapter: mysql
database: depot_development
username: root
password: mysql
host: localhost
test:
adapter: mysql
database: depot_test
username: root
password: mysql
host: localhost
production:
adapter: mysql
database: depot_production
username: root
password: mysql
host: localhost
在调试的过程中,总是说/usr/lib/ruby/1.8/yaml.rb:133:in `load': syntax error on line 16, col 2:这个错误,经过Google后才知道,所有的:后边必须有一个空格,否则就报错,真是晕。
创建脚手架
ruby script/generate scaffold Product Admin
Product代表模型名称,采用大小写混合的方式
Adimin代表控制器名称,采用大小写混合的方式
这些就是今天的试验了,总算弄出来,例子中的真确界面,程序也是正确执行了,感觉上手还是比较快的,在使用中发现的问题在网络上基本上都可以查到,耽误时间的地方主要是因为不熟悉ROR和MySqL上面了,还有就是ROR的一些默认配置文件中的空格问题,刚开始的时候地区很蒙,呵呵,剩下等更加详细的使用了,到此第6章,还是没有完,差一点,明天来。
发表评论
-
启动NDuiker项目
2005-01-20 17:05 477今天是进驻博客园的第一天,在这里安家真的很不错,十分感谢DuD ... -
NDuiker项目第2天总结
2005-01-21 08:53 669昨天晚上基本上实现了 ... -
NDuiker项目第3天
2005-01-22 22:50 603今天是周六了,原本以为是很轻松的一天,结果只有到了这个时 ... -
NDuiker项目第6天
2005-01-25 16:50 633这几天好忙,也好累呀,这几天是公司项目收尾的阶段,忙的都透不过 ... -
对.Net 类库的一点思索
2005-02-02 09:29 628这些天主要在测试GDI+的 ... -
测试一个网站的想法
2005-02-05 17:07 563由于项目的需要,测试了一下“上海研发公共服务平台” 登录:ht ... -
项目建议书编写总结
2005-02-25 15:46 791昨天完成了项目建议书的编写工作,整个春节期间的工作到今天全部完 ... -
MyIE 增加了RSS功能
2005-02-28 09:54 588今天更新了MyIE,发现MyIE增加了RSS功能,试用了一下, ... -
www.beihua.edu.cn计划摘录
2005-02-28 14:11 795www.beihua.edu.cn工作计划 1:网站后期制作计 ... -
网站调研资料记录
2005-03-01 15:56 647资料整理备忘 1:内外网IP确认 ... -
静静的看书
2005-03-08 17:18 609这几天还是很忙,但是似乎好了很多,因为目前主要是写一个基于Sm ... -
我的Smart Client 的学习笔记
2005-03-09 15:35 1744User Interface Process (UIP) Ap ... -
研发、开发、运营
2005-03-25 12:15 647这些天很忙,网络也不争气,才刚刚好一点。 ... -
当需求变更来临
2005-04-30 14:26 559昨晚已经和老婆安排好5 ... -
重新登录Window2003的域
2005-05-12 09:58 707今天公司要求重新登录Windows2003的域,记录一下,以后 ... -
当不愿意写字得时候
2005-05-16 15:36 760做项目得前期分析得时候,我还是比较喜欢在本子上写写、画画得,通 ... -
远离技术的时候
2005-06-20 11:05 460这一个月一直在忙一个项目,现在项目的可研报告也 ... -
Asp.Net 中使用客户端Activex控件需要注意的事情
2005-08-13 12:57 986案例:Asp.Net +VB制作的Activex控件 操作系统 ... -
Office开发中的测试的与众不同之处
2005-08-22 14:29 779今天修改了一下自己以 ... -
大家确实都很忙
2005-08-27 08:20 755先谈几个技术问题: 1 ...
相关推荐
《Agile Web Development with Rails》是一本经典的Rails开发指南,中文版的出版使得更多的中国开发者能够深入理解并应用敏捷开发方法与Ruby on Rails框架。这本书是Rails开发者的必备参考资料,它详细介绍了如何...
Ruby on Rails helps you produce high-quality, beautiful-looking web applications quickly. You concentrate on creating the application, and Rails takes care of the details., Tens of thousands of ...
《Agile Web Development with Rails》(敏捷Web开发:Ruby on Rails)这本书,作为Rails开发新手的教材,强调了敏捷开发方法,并以其帮助开发者建立起一个实用的Web应用。从给出的文件信息来看,这本书正在编写过程...
Agile Web Development with Rails 1-14节_ppt(老师发的修正版)
agile web development with rails 5(英文电子书).............................................................................................................................................................
《敏捷Web开发与Rails》是一本深度探讨如何利用Ruby on Rails框架进行敏捷Web开发的指导书籍,由Dave Thomas、David Heinemeier Hansson等多位在Rails社区有着深厚贡献的作者共同编写。本书不仅覆盖了Rails的基本...
通过上述分析,我们可以看到,《敏捷Web开发与Rails》第三版不仅是一本关于Rails框架的技术书籍,更是一部指导开发者如何运用敏捷方法论进行Web开发的经典之作。无论对于初学者还是经验丰富的开发者而言,本书都具有...
《敏捷Web开发与Rails:程序指南 第四版》是一本深度探讨使用Ruby on Rails框架进行敏捷Web应用开发的专业书籍。本书旨在帮助开发者充分利用Rails 4的特性,提高开发效率,实现快速迭代和高质量的代码编写。 Rails是...
《敏捷Web开发与Rails》第四版是一本专为软件开发者设计的权威指南,全面涵盖了使用Ruby on Rails框架进行敏捷Web应用开发的知识。Rails 3是该版本的重点,它引入了许多新特性和改进,使得开发过程更为高效且灵活。...
《Agile Web Development With Ruby On Rails》是两本广受欢迎的书籍,主要涵盖了使用Ruby on Rails框架进行敏捷Web开发的知识。这本书的第1版和第2版分别详细讲解了如何运用敏捷开发方法来构建高效、可扩展且易于...
总之,《Pragmatic - Agile Web Development with Rails》是一本全面而深入的教程,适合想要踏入Ruby on Rails开发领域的初学者。通过阅读和实践,读者不仅能掌握Ruby语言和Rails框架的基本用法,还能了解敏捷开发的...
Agile Web Development with Rails, 2nd Edition <br>有两份PDF文件,大小分别是7.39MB和6.55MB <br>作者: Dave Thomas , David Heinemeier Hansson , Leon Breedt , Mike Clark , James Duncan Davidson ,...
### Agile Web Development with Rails for Rails 3.2 #### 核心知识点概览 - **Rails 3.2概述** - **敏捷开发方法论** - **Model-View-Controller (MVC) 模式** - **Ruby on Rails基础与高级特性** - **面向对象...
Agile Web Development with Rails 4th(正式版).pdf
《Agile Web Development with Rails》第四版是一本经典的Rails开发指南,旨在为开发者提供一套全面、实用且高效的敏捷开发方法论。本书由Sam Ruby、Dave Thomas、David Heinemeier Hansson等人共同撰写,并得到了...