中关村村草 发表于 2011-06-02 12:52

[Ruby on Rails][001]起步

起步

实例1:

写一个blog网站。

网站有首页,首页有链接指向blog列表。

blog列表中有“添加"按钮,指向添加blog页面。

blog列表中每条记录都有"显示“按钮,在新页面显示blog内容。

blog列表中每条记录都有"修改“按钮,在新页面修改blog内容。

blog列表中每条记录都有"删除“按钮,弹出对话框,确认删除,删除本条blog。

============================================================

开始一步步做了!

一、新建一个网站。

1、新建一个名叫blog的rails工程,数据库用mysql。

view sourceprint?1 $ rails new blog -d=mysql 这样就自动创建了一个名叫blog的目录,里面包含了rails工程的所有文件。

进入blog目录。

view sourceprint?1 $ cd blog2、安装工程所需要的gems。

view sourceprint?$ bundle install3、配置数据库。

编辑 config/database.yml 文件。

view sourceprint?1 development:

2   adapter: mysql2

3   encoding: utf8

4   database: blog_development

5   pool: 5

6   username: root

7   password:

8   socket: /tmp/mysql.sock
根据自己的实际情况修改 username 和 password 的值。

4、创建数据库。

view sourceprint?$ rake db:create
5、网站创建完毕。运行网站。

view sourceprint?$ rails server
6、查看网站。

在浏览器中输入网址: http://localhost:3000/

显示如下页面:



新建网站成功。

二、建立网站首页

1、新建controller和action。

view sourceprint?1 $ rails generate controller home index这样就新建了一个名为home的controller和该controller下的名为index的action。

2、修改index的view的内容。

编辑 app/views/home/index.html.erb 的内容。

view sourceprint?1 <h1>Hello , Rails! </h1>3、删除默认首页。

view sourceprint?1 $ rm public/index.html
4、设置home#index为默认首页。

在 config/routes.rb 文件中添加一句:

view sourceprint?root:to => "home#index"5、运行网站,查看首页。

在浏览器中输入网址: http://localhost:3000/

显示如下页面:



三、开发blog系统

rails可以瞬间就完成从建数据表到实现增删改查的过程。

1、使用scaffold命令快速创建blog系统。

数据库存储一条blog需要存储 发布者、blog标题、blog内容。

所以:


view sourceprint?1 $ rails generate scaffold Post name:string title:string content:text
2、生成数据表。


view sourceprint?$ rake db:migrate3、在首页建立到blog列表的链接。

在 app/views/home/index.html.erb 里添加:


view sourceprint?1 <%= link_to "my blog",posts_path %>
4、运行网站,查看效果。

首页:



blog列表:



新建blog:









页面不一一列举了。

2gua 发表于 2011-06-04 15:48

村草,支持!

coolesting 发表于 2011-06-28 00:05

$ rails generate scaffold Post name:string title:string content:text

请问, 这三个段, 自动生成的sql是什么, 唯一索引值呢, 关键索引呢, 都是什么。

coolesting 发表于 2011-06-28 00:07

本帖最后由 coolesting 于 2011-06-28 00:10 编辑

假设人要修改上面那个表单, 从别的表中的字段添加进去那个form中, 一起提交,

或者说, 二个表有一个字段关联, 如果把别的表的字段也一起读出来, 生成这个form.


例如 ,

建立二表, 如下
表A(aid, text, content)
表B (uid, name, pawd)

我要把这四个字段 , uid, aid, text, content 读出来放在同一个form上, 一起提交,

能不能自动自成这个form

2gua 发表于 2011-06-28 08:24

多表关联不是问题。

zuerrong 发表于 2011-06-28 09:41

假设人要修改上面那个表单, 从别的表中的字段添加进去那个form中, 一起提交,

或者说, 二个表有一个字 ...
coolesting 发表于 2011-06-28 00:07 http://bbs.chinaunix.net/images/common/back.gif


    rails用的ORM系统(ActiveRecord),ORM自动帮你做了很多工作。
关于ORM好坏的讨论一直没终止过。
不过总而言之,在framework里,为了整体集成性,ORM不可或缺。

2gua 发表于 2011-06-28 13:07

试试asp.net mvc吧,我觉得比RoR好。

zhlong8 发表于 2011-06-28 13:24

原来楼主是村草,我一直以为是中关村草夫……

coolesting 发表于 2011-06-28 15:04

试试asp.net mvc吧,我觉得比RoR好。
2gua 发表于 2011-06-28 13:07 http://bbs.chinaunix.net/images/common/back.gif


    window 上来说asp.net的确是首选

2gua 发表于 2011-06-28 15:57

window 上来说asp.net的确是首选
coolesting 发表于 2011-06-28 15:04 http://bbs.chinaunix.net/images/common/back.gif


    不只是这个因素,关键是结构体系。
页: [1] 2
查看完整版本: [Ruby on Rails][001]起步