赛尔号之圣魔之战:使用NetBeans 6.0 在10分钟内创建一个 Ruby 博客程序
来源:百度文库 编辑:九乡新闻网 时间:2024/04/18 21:36:08
使用NetBeans 6.0 在10分钟内创建一个 Ruby 博客程序
Ruby 2007-11-25 14:41:45 阅读49 评论0 字号:大中小 订阅
使用NetBeans 6.0 在10分钟内创建一个 Ruby 博客程序
在本教程中,我将利用 NetBeans IDE 对 Ruby 的支持创建一个简单的 Web 应用程序。本文将演示如何创建一个 Ruby 博客程序。您将遵循这些基本流程创建模型、添加控制器并生成视窗。
内容
- 教程需求 - 创建示例数据库 - 创建 Ruby on Rails 项目 - 配置数据库环境 - 创建模型 - 迁移数据库 - 创建一个控制器 - 运行应用程序 - 更多功能:再添加另一个字段 - 更多功能:使列表看起来更像是一个博客
'700')this.width='700';if(this.height>'700')this.height='700';" border=0> 教程需求
本教程需要以下技术和资源:
- 一个数据库服务器
- 支持 Ruby 的 NetBeans IDE 6.0
注意:本教程使用 MySQL 数据库服务器。有关在 Ruby 应用程序中有使用MySQL 数据库服务器的信息,请参阅 安装和配置 Ruby 支持。本文档中同样包括如何使用 Java DB 数据库服务器的技巧。< /p>
创建 Ruby on Rails 项目之前,首先需要先创建一个 rubyweblog_development 数据库。步骤如下:
- 打开一个命令窗口。
- 启动 MySQL 数据库服务器,如果它还没有启动。
- 输入以下命令创建 rubyweblog_development 数据库,然后单击回车键。 [pre]mysqladmin -u root -p create rubyweblog_development[/pre]注意: 如果根用户未设置口令,则省略 -p 参数。
首先,创建一个 Ruby on Rails 项目。默认情况下,Ruby on Rails 应用程序将创建在符合项目约定的目录结构中。
- 在 NetBeans IDE 中,选择 File > New Project。
- 在 Categories 栏中选择 Ruby ,在 Projects 栏中选择 Ruby on Rails Application。单击 Next 按钮。 注意:首次在 IDE 中创建 Ruby 项目时,IDE 会检查系统中是否还安装了其他 Ruby 软件(除了 IDE 随带的 JRuby 软件之外)。如果有,IDE 会弹出一个对话框,询问您选择使用哪一个软件。如果要使用 IDE 随带的 JRuby 解释器,就选择 JRuby,反之,选择安装的 Ruby。有关更多信息,请参阅安装和配置 Ruby 教程中的 Configuring the IDE to Use Your Own Ruby Installation 一节。
- 在 Project Name 栏中输入 RubyWebLog 。接受所有其他默认设置。
- 单击 Finish 按钮,这样便创建了一个新项目。 IDE 将创建一个项目目录,名称与您的项目名称相同。您将看到:
- Projects 窗口包含应用程序的基本类别。需要特别关注的是 Controllers、Models 和 Views 节点。在本教程中,我们将遵循基本流程创建模型、添加控制器并生成视窗。& amp; amp; amp; lt; /li>
- Output 窗口将列出应用程序的文件列表。您可以单击 Output 窗口中的链接在编辑区域打开该文件。
接下来的步骤是编辑 database.yml 文件,该文件已经配置使用 MySQL 适配器和 development 数据库。您无需进行任何配置,除非设置了根用户口令。
- 打开 Configuration > database.yml
- 编辑 database.yml 文件,在 development 配置中添加 口令。
- 保存并关闭 database.yml 文件。
特别注意: 如果操作系统的主文件中未包含 localhost,则使用 127.0.0.1 代替。另外还需注意,在一些系统中,应使用小写字母进行数据库设置。
在本节中,您将利用 Rails Generator 创建应用程序的模型。Ruby 博客应用程序需要使用 Post 模型存储博客文章的实例。
- 在 Projects 窗口中,右键单击 Models 节点,然后选择 Generate。
- 在 Rails Generator 对话框的 Arguments 栏中输入 Post,然后单击 OK 按钮。 Rails Generator 将创建一个名为 Post 的模型。Output 窗口将列出该操作创建的文件:
- app/models/post.rb。该文件包含 Post 模型的方法。该文件还将在编辑域中打开。
- test/unit/post_test.rb。 检验 Post 模型的测试单元。
- test/fixtures/posts.yml。安装模型的固定测试文件。
- db/migrate/migrate/001_create_posts.rb。定义数据库初始结构的迁移文件。
接下来,我们需要修改迁移文件 001_create_posts.rb。首先添加信息配置数据库。
- 在 Output 窗口中,单击 001_create_posts.rb 文件的链接。
打开该文件,可以看到一个 self.up 方法(用于创建 posts 表)和一个 self.down 方法(用于释放 posts 表)。
- 将标题栏(以下代码的 黑体部分)添加到 self.up 方法的 create_table 中,如下图所示:
CreatePosts < ActiveRecord::Migration
def self.up
create_table :posts do |t|
t.column "title", :string
end
end
def self.down
drop_table :posts
end
end
- 在主菜单中,选择 File > Save All。
- 在 Projects 窗口中,右键单击 RubyWebLog 节点,然后选择 Migrate Database > To Current Version。
该操作将更新数据库,使数据库中含有 posts 表。Output 窗口将显示迁移何时完成。
接下来,使用 Rails Generator 创建一个控制器与 Post 模型交互。在本教程中,我们添加了支架(Scaffolding)代码,可提供一个 CRUD 界面用于在博客中创建、读取、更新和删除条目。
- 在 Projects 窗口中,右键单击 Controllers 节点,选择 Generate。
- 在 Rails Generator 对话框的 Name 栏中输入 Blog,置空 Views 栏,单击 OK 按钮。
这样将创建一个 blog_controller.rb 文件,并在编辑域中打开该文件。这时,Projects 窗口的 Controllers 节点中就添加了一个 blog_controller.rb 节点。
- 编辑 blog_controller.rb,在其中添加以下 scaffolding 代码。此代码将为 Post 模型提供一个简单的 CRUD 应用程序。
BlogController <
ApplicationController
scaffold :post
end
接下来,测试应用程序。
- 在 Configuration 节点中,打开 routes.rb。找到下面这行代码:
[pre]# map.connect '', :controller => "welcome"
[/pre]
- 删除注释标记(#),将 welcome 修改为 blog。
- 展开 Public 节点,右键单击 index.html,然后选择 Delete。
index.html 将默认显示 Welcome 页面,而这并不是您想要的。通过删除 index.html, Rails 将在 routes.rb 中寻找需要显示的页面。在前面的步骤中,我们已经将 welcome 页面已经修改为 blog。
- 选择 File > Save All。
- 单击工具栏中的 Run Main Project 按钮。
该操作将启动 WEBrick 服务器,它是 Ruby on Rails 框架的一部分。同时将启动 web 浏览器。下图是该应用程序的初始页面。
图 1: RubyWebLog 主页
'700')this.width='700';if(this.height>'700')this.height='700';" border=0>
- 单击 New 按钮。
图 2: 创建新日志
'700')this.width='700';if(this.height>'700')this.height='700';" border=0>
- 输入一个标题,然后单击 Create 按钮。
下图就是创建博客日志的一个例子。
图 3: 成功创建博客日志
'700')this.width='700';if(this.height>'700')this.height='700';" border=0>
此处,我们将再添加一个字段(除了Title字段之外),从而使 posts 表包含一个 Body 栏,用于提供博客的正文内容。创建字段的步骤现在应该很熟练了。
- 右键单击 Database Migrations 节点,选择 Generate。 在 Rails Generator 对话框的 Arguments 栏中输入 AddBody,然后单击 OK 按钮。
IDE 将创建一个迁移脚本版本文件 002_add_body.rb,并在编辑域中打开该文件。
- 对 002_add_body.rb 作如下修改:
def self.up
add_column 'posts', 'body', :text
end
def self.down
remove_column 'posts', :body
end
end
如果您再次返回迁移脚本,这个迁移脚本将会把正文栏添加到 posts 表中,然后又将它删除。
- 选择 File > Save All。
- 右键单击 RubyWebLog 节点,选择 Migrate Database > To Current Version。
- 返回浏览器,单击 New Post 链接,看 Ruby 如何识别新的正文字段。
图 4:含有正文字段的新日志
'700')this.width='700';if(this.height>'700')this.height='700';" border=0>
- 再创建一些博客条目。例如:
图 5: 更多博客日志
'700')this.width='700';if(this.height>'700')this.height='700';" border=0>
用于 BlogController 中的 scaffold 方法创建出一个基本的 CRUD 应用程序,使您能够轻松地对 Post 模型进行测试。现在,您利用 scaffold 方法生成同样的视窗,这样一来,用户界面可以由您来进行个性化定制。
- 在 Projects 窗口中,右键单击 Views 节点,然后选择 Generate。
- 在 Rails Generator 对话框中,从 Generate 下拉菜单中选择 scaffold。
- 在 Model Name 栏中输入 Post,在 Controller Name 栏中输入 Blog 。将 Actions 栏置空。选择 Overwrite,强制 BlogController 重新生成,然后单击 OK 按钮。
IDE 会为 Post 模型创建一个视窗,并在 Output 窗口中列出内容。
- 展开 Views > blog,并打开 list.rhtml,该文件用以显示博客条目的列表。 删除
和
标记,并将其替换为下列代码:
The Ruby Blog
<% @posts.each do |post| %>
<%= post.title %>
<%= post.body %>
<%= link_to 'Permalink', :action => 'show', :id =>post%>
<% end %>
此代码将为每个 post 操作实例都生成一个标题、正文和 Permalink,如图 6所示。
- 选择 File > Save All ,然后刷新浏览器,查看 Post 模型的新界面。
图 6: 新的、改进的模型界面
'700')this.width='700';if(this.height>'700')this.height='700';" border=0>
- 想要首先显示最新的条目,就需要通过在 @posts in list.rhtml 的末尾添加 .reverse 来反转排序次序:
未来计划[pre] <% @posts.reverse.each do |post| %>
[/pre]保存文件并刷新浏览器,博客程序将显示如下内容:
图 7: 反序显示博客日志
'700')this.width='700';if(this.height>'700')this.height='700';" border=0>
- 要继续学习 Ruby 博客程序教程,以及了解有关 NetBeans IDE 中的 Ruby 支持的更多内容,请访问 Building a Relationship Between Rails Models。
- 要获得 NetBeans Ruby 的技术支持和最新开发的功能,请加入 [/url]和 [url=http://ruby.netbeans.org/servlets/ProjectMailingListList]邮件表。
- 要提交您自己的 NetBeans Ruby 教程,请访问 NetBeans Community Docs 页面。
使用NetBeans 6.0 在10分钟内创建一个 Ruby 博客程序 netbeans调试程序的方法 创建一个简单的openlaszlo程序 sinatra+sequel创建只需要一个文件的blog程序 在Windows平台使用Apache2.2和Mongrel运行Ruby on Rails-... 在首页创建一个类型日志目录 在首页创建一个类型日志目录 在Windows 7内轻松创建虚拟硬盘 使用Axis开发Web Service程序-月光博客 使用CWnd创建Dialog 使用nohup让程序在远程主机后台运行 每个程序员都应该学习使用Python或Ruby 秘密公开:点穴能让哮喘在5-10分钟内不哮喘 10种能让你在一分钟内感觉良好的方法 40招,让你十分钟内看清一个男人 Steve Pavlina:如何在20分钟内找到人生目标? 如何在开盘15分钟内发现当天黑马.. 如何在开盘15分钟内发现当天黑马$$ 如何在开盘15分钟内发现当天黑马 如何在开盘30分钟内捕捉个股 如何在开盘市场15分钟内发现当天黑马 如何在开盘市场15分钟内发现当天黑马 如何在20分钟内找到你的人生目标?rty 在开盘15分钟内发现当天黑马最新新闻 沃茨手表网 CSDN程序文档 上海旅游网 神马百科 程序博客 香蕉皮作业帮 景德镇新闻网 余姚信息网 作业帮作业网 互助问答吧 16楼社区 解题作业帮艺术百科亮点网神马百科 神马文学网 拍题作业网 UC知道 我爱散文网 北方网 科学网 第一文库网 微思作业网 我要文章网 都市新闻网西欧教育西山新闻网好楼房产信息网 九乡新闻网农企信息网仙女们写真照片音乐简谱网米粒芽学校大全网95后网站汝南网欧普网宝宝故事网 神马品牌网 杭州交通信息网/"> 杭州市高中教育平台 查人人中国名人网 爱美之人 上车买票 安卓系统之家 中科新闻网 科学院研究所 高考快车 高考志愿帮 大学志愿大全 高校问答 高考问答 中考百科 大学知道 久游网 - 选择 File > Save All ,然后刷新浏览器,查看 Post 模型的新界面。