使用rails3.1.1建立第一个helloworld项目 让rails跑起来
2011-12-26 15:05 开源天宝 阅读(3295) 评论(5) 编辑 收藏 举报一、回顾
在上几篇文章中,我们:
- 安装了railsinstaller,它包含ruby运行环境,rails框架包,SQLite3 数据库;
- railsinstaller中也包含了git这个版本管理工具;
- 额外添加了mysql的链接和调用方法包;
- 选择了vim作为开发的编辑器;
教你10分钟内在Windows上完成Rails开发环境的安装和配置
做好使用vim编辑器进行Ruby on Rails开发的准备
ruby gem 本地安装方法以及在windows下添加mysql.gem
本篇文章中,我们将:
- 建立第一个项目;
- 启动服务;
- 在浏览器中浏览这个服务;
- 修改视图显示的内容;
- 在视图中显示动态内容;
- 在控制器创建动态内容,并在视图中显示;
二、rails new demo。
安装了rails框架之后,我们使用它的命令行工具来创建我们的第一个项目。
1,首先,进入命令行窗口,然后进入到你希望项目文件存放的目录,如:我的是cd F:/rudy/work/ (杯具啊,ruby打错了,但是程序已经安装在这个目录下,不敢修改,怕引起其它问题)。
其次,使用
rails new demo1 |
来创建一个新的项目,如下图,
这样,一个rails的项目的就创建完成了。下面我们需要启动ruby on rails 的服务,才能通过浏览器产看我们的项目,有些类似iis或者apache.
三,启动服务
首先,进入刚才创建的目录
cd demo1 |
然后开启服务
rails server |
注意:旧版的命令是。后面我们会看到更多命令都统一为 rails something的形式了,而不是旧版的ruby something
ruby script/server |
结果见下图:
这样rails服务就启动成功了,我们打开浏览器,输入:http://localhost:3000进行访问
四,say hello
rails是一个mvc框架,rails接收来自浏览器的请求,对请求进行解读以找到合适的控制器,再调用控制器中合适的方法。然后,控制调用合适的视图,把结果显示给用户。rails提供了快速创建视图和控制的方法,只需要一个命令:
rails generate controller Say hello goodbye |
结果见下图
访问方法:http://localhost:3000/say/hello 结果见下图
五,在视图中添加动态内容
下面我打开上图中提示的视图文件,它在您程序目录的app/views/say/hello.html.erb
<h1>Say#hello</h1>
<p>Find me in app/views/say/hello.html.erb</p>
我们修改为:
<h1>Say#hello</h1>
<p>现在时间是:<%=Time.now%></p>
这时再访问:localhost:3000/say/hello 显示如下
六,在控制中添加动态内容
上面的演示,时间在视图中取得,下面我们做一个小变化,打开控制器文件app/controllers/say_controller.rb
class SayController < ApplicationController def hello end def goodbye end end |
修改为
class SayController < ApplicationController def hello @time = Time .now end def goodbye end end |
视图:app/views/say/hello.html.erb修改为
<h1>Say #hello</h1> <p>现在时间是:<%= @time %></p> |
我们会看到和上面一样的结果。
ok,rails已经跑起来了,接下来我会策划一个项目,边学边做。更多精彩内容,请听下回分解。
【推荐】还在用 ECharts 开发大屏?试试这款永久免费的开源 BI 工具!
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 对象命名为何需要避免'-er'和'-or'后缀
· SQL Server如何跟踪自动统计信息更新?
· AI与.NET技术实操系列:使用Catalyst进行自然语言处理
· 分享一个我遇到过的“量子力学”级别的BUG。
· Linux系列:如何调试 malloc 的底层源码
· C# 中比较实用的关键字,基础高频面试题!
· .NET 10 Preview 2 增强了 Blazor 和.NET MAUI
· Ollama系列05:Ollama API 使用指南
· 为什么AI教师难以实现
· 如何让低于1B参数的小型语言模型实现 100% 的准确率