Rails3教程系列之一:Rails3入门(1) - [rails]

文章出处:http://edgeguides.rubyonrails.org/getting_started.html

 

再拾Rails的时候发现已经到3.0.3了, 巨大的改变发现找篇中文教程都找不到,于是索性根据官方教程一边学一边翻译,就当学习笔记。水平有限,不足此处敬请谅解。

 

1. 环境搭建

 

  • Ruby1.8.7+ (那么由于187p248,249的bug可能会导致Rails3崩溃,官方建议使用1.9.2的Ruby版本)
  • RubyGems
  • SQLITE3数据库 (那么这个数据库是Rails内置支持的,我们也可以使用其他数据库,比如MySql5.5)
安装:
1, 安装ruby192, 地址: http://rubyinstaller.org/
2, 安装rails3, $ gem install rails
3, 安装IDE, 个人比较喜欢Aptana3, www.aptana.com

 

 

2. Rails的指导原则和理念

 

  • DRY(Dont Repeat Yourself) - 保持代码清晰高效,这个一直是我喜欢rails的原因之一
  • 约定大于配置 - rails假定你想要做什么以及准备如何做,而不是把任何事情都放到配置文件中去。比如我们说好数据库表的名称应该是模型类名称的小写的复数形式。那么rails会自动把该数据表与其模型类进行关联。
  • REST是WEB应用的最佳模式 - 用resources以及标准的HTTP动作来组织你的应用。

 

3. 创建你的第一个应用

大多数的第一个应用要么是购物车要么就是博客, 我们也不能免俗. 我们将要在下面的内容中打造一个博客,也就是rails经常吹嘘的10分钟打造的博客系统(事实上用不了十分钟)

 

$ rails new blog

 

这将使rails为你创建一个blog工程 (rails -h可以查看rails命令的帮助)

 

$ cd blog

 

我们转到blog目录内。

 

那么在任何情况下,Rails会在你的工作路径内为你创建一个blog的文件夹。本教程的大多数工作都会在app文件夹内操作,这里有一个Rails默认创建应用时创建的文件夹以及文件说明:

文件/文件夹说明
Gemfile该文件允许你指定你程序所需要的gem (比如你用到了mysql数据库, 你需要在这里指定 gem "mysql").
README你的应用程序大体说明. 用这个来告诉他人该程序是干什么的, 等等.
Rakefile该文件包含了一系列可以在终端运行的命令.
app/包含了应用程序的控制器,模型,以及视图. 在本教程中你将专注于该文件夹.
config/配置你应用程序的运行时规格,路由,数据库等等.
config.ru基于服务器的Rack配置,用于启动程序.
db/显示你当前数据库的模式,以及数据库迁移.
doc/你应用的详细文档.
lib/你应用的扩展模块.
log/日志.
public/唯一可以被访问的文件夹. 你可以保存你的图像,javascript, 样式表(CSS), 以及其他静态文本.
script/包含启动你程序的rails脚本,并可以放置其他你用来部署或者运行你程序的脚本.
test/单元测试,夹具以及其他测试
tmp/临时文件
vendor/放置第三方代码的地方. 在一个典型的rails应用中, 这将包括ruby gems, rails源代码 (如果你拷贝到你的应用中的话), 以及包含额外功能的插件.

 

接下来我们安装需要的gems

 

$ bundle install

(事实上绑定的gems都定义在gemfile中)

 

配置数据库连接:config/database.yml, 默认情况下是连接到SQLite3的, 如果你在使用SQLite3,保持默认就可以了, 如果是MySql,需要改为:

 

 

development:
   adapter: mysql
   encoding: utf8
   database: blog_development
   pool: 5
   username: root
   password:

 

接下来创建数据库。

 

$ rake db:create

 

该rake命令会根据你的数据库配置自动为你创建数据库

 

万事俱备,只欠服务器了

 

$ rails s

(新的script命令变化很大, 现在只需要输入 rails [option] [args] 就可以了)

 

默认情况下 rails 将启动 Webrick 服务器, 赶快打开你的浏览器在地址栏输入 http://localhost:3000/ 查看你的第一个rails程序 吧 :)

 

 

我们下节课见。

 

Rails入门教程一(翻译) 学习rails和ruby的好教程。赶快下吧! 立即下载

相关推荐

rails3教程

Rails3教程系列 DRY(Dont Repeat Yourself) DRY(Dont Repeat Yourself) DRY(Dont Repeat Yourself) DRY(Dont Repeat Yourself) DRY(Dont Repeat Yourself) DRY(Dont Repeat Yourself) DRY(Dont Repeat Yourself) DRY(Dont Repeat Yourself) DRY(Dont Repeat Yourself) DRY(Dont Repeat Yourself) DRY(Dont Repeat Yourself) DRY(Dont Repeat Yourself) DRY(Dont Repeat Yourself) DRY(Dont Repeat Yourself) DRY(Dont Repeat Yourself) - 保持代码清晰高效,这个一直是我喜欢 rails railsrailsrails的原因之一  约定大于配置 - rails railsrailsrails假定你想要做什么以及准备如何,而不是把任事情都放到配置文件中去。 假定你想要做什么以及准备如何,而不是把任事情都放到配置文件中去。 假定你想要做什么以及准备如何,而不是把任事情都放到配置文件中去。 假定你想要做什么以及准备如何,而不是把任事情都放到配置文件中去。 比如我们说好数据库表的名称应该是模型类小写复形式。那么 rails railsrailsrails会自动把该数据表与 会自动把该数据表与 其模型类进行关联。  REST 是 WEBWEB 应用的最佳模式 应用的最佳模式 - 用 resourcesresourcesresourcesresourcesresourcesresources resourcesresources以及标准的 HTTP HTTP动

Rails3教程系列之一:Rails3入门

文章出处:http://edgeguides.rubyonrails.org/getting_started.html   再拾Rails的时候发现已经到3.0.3了, 巨大的改变发现找篇中文教程都找不到,于是索性根据官方教程一边学一边翻译,就当学习笔记。水平有限,不足此处敬请谅解。   1. 环境搭建   Ruby1.8.7+ (那么由于187p248,249的bug可能会导致Ra...

灰谷一夜 279

Rails入门教程一(翻译).pdf

NULL 博文链接:https://yiditushe.iteye.com/blog/361584

rails关联学习笔记

[url]http://guides.rubyonrails.org/association_basics.html[/url] 1、为什么要关联? 为什么我们需要在两个model之间建立关联?因为它让通用操作变得简单和容易。例如,考虑有一个rails应用程序包含一个customer model和一个order model。每一个customer有很多的order。没有关联时,model声明如...

bellstar 230

QuickFix Java 实战(一)协议解析、环境搭建与首个应用

本文是QuickFix Java实战系列的第一篇,详细介绍了FIX协议的核心原理与QuickFix/J引擎的实战应用。内容涵盖FIX协议的标签化通信机制、QuickFix/J库的两种下载方法、协议定义文件解析,并通过一个完整的模拟订单发送示例,指导读者快速搭建首个FIX应用环境,实现消息生成与会话通信。

dog123的博客 495

WSOLA原理及matlab仿真

WSOLA原理 对于 OLA 算法来说,常常无法保持原信号中的周期性结构,在帧裁剪的过程中,不能保证每一个帧都能覆盖完整周期并保证其相位对齐,会产生相位跳跃失真。 为保证**基频不变**,就要使用 WSOLA 算法。 WSOLA 并不直接在 Ha 处找一帧进行直接拼接,而是在一个区间内寻找与理想帧最接近的一帧进行叠加。 ![在这里插入图片描述](https://img-blog.csdnimg.cn/8a234f4fde104fc69a9f3ddb7bcf3014.png?x-oss-process=ima

ManiacLook的博客 3214

Rails3.0学习笔记(三) 安装配置过程中收集的资源总结

Rails3.0学习笔记系列目录 Rails3.0学习笔记(一) homebrew、git、mysql环境的安装 Rails3.0学习笔记(二) 安装RVM,升级Ruby,安装Rails3 Rails3.0学习笔记(三) 安装配置过程中收集的资源总结     重点推荐 《Ruby on Rails 实战圣经》 参考链接 Homebrew RVM Ruby Ru...

王健 188

webview腾讯x5内核离线安装

离线集成腾讯TBS浏览器服务,彻底解决官方下载限流问题,永久免费

观千剑而后识器,操千曲而后晓声。 7909

Ruby on Rails 教程之快速入门

一,简介 Ruby on Rails是一个框架,一个使Web 应用的开发、部署和维护变得更容易的框架。自从发布第一个版本以来, Rails 已经从一个默默无闻的玩具蜕变成了一种世界性的现象。它拿下了一个又一个的奖项,更重要的是,很多web2.0 应用都选择它作为基础框架。Rails 已经不再只是一小撮黑客推崇的时髦玩艺:很多跨国公司正在用它来开发自己的web 应用。 为什么会这样? 有几个方...

不坠青云 1万+

完整内、外期货量化交易系统源码可售

支持客户登录校验,支持所有的实时行情和汇总报价功能、实时资讯(报价,列表,分时,分钟成交明晰,),多线程支持盘后收盘作业下载(日线,5分钟线,15分钟, 30分钟,60分钟线,),支持从服务器下载相关运行配置(来自服务器动态配置信息,如收盘日期等),实现状态条显示。收盘作业包括日线、5分钟线、15分钟线、30分钟、60分钟线、2小时线、4小时线每日分时走势。综合信息栏显示用户账户信息、合约信息、当日委托单记录、当日成交记录、当日平仓记录、当日跟单记录、当日(月/周)排行榜、下单栏、持仓信息;

qq_35600909的博客 1805

Containerd容器运行时的私有仓库镜像推送push和镜像拉取问题解决

向/etc/containerd/config.toml配置添加如下配置,然后重启containerd。向/etc/containerd/config.toml配置添加如下配置,然后重启containerd。通过crictl为k8s拉取镜像如下所示。可以通过ctr命令进行镜像推送。往私有仓库推送镜像如下。

Bulut0907 1万+

Rails教程

文章出处:http://edgeguides.rubyonrails.org/getting_started.html   再拾Rails的时候发现已经到3.0.3了, 巨大的改变发现找篇中文教程都找不到,于是索性根据官方教程一边学一边翻译,就当学习笔记。水平有限,不足此处敬请谅解。   1. 环境搭建   Ruby1.8.7+ (那么由于187p248,249

Rain 4531

后悔没早点知道!用AI只需四步,一次性讲清高质量论文引言写法(附公式+AI指令)

帮我写SCI 论文撰写引言的“研究背景与重要性”,要求从本研究所属领域的小背景切入,使用现在时态描述该领域的总体状况与发展趋势,突出其在学术研究、实际应用或社会层面的重要价值,并通过一个吸引人的钩子开头,如关键事实、现实问题或学术热点,引导读者关注本主题的重要性。梳理你所在领域和你研究相关的关键成果,但不能罗列所有文献,重点抓核心脉络,这部分最重要的实际上是让你了解别人的研究脉络,然后在每个关键的节点上,引用几篇关键参考文献作支撑,来体现你对领域的熟悉度就可以了。3)研究缺口模糊,没法突出问题的真实价值;

qq_64378896的博客 116

视频教程-Ruby on Rails入门-Ruby/Rails

Ruby on Rails入门 申思维(http://siwei.me),软...

weixin_31716893的博客 550

Moviepy自动化剪辑视频中的广告

本教程展示了如何使用 Python 中的 MoviePy 库,通过检测和剪辑广告段落来实现视频内容的清洁播放。通过广告检测算法和 MoviePy 剪辑功能的结合,可以自动化处理视频,极大提升编辑效率。在学习和应用中,理解广告检测的原理及其实现方法尤为重要,以便针对不同类型的视频进行调整。此外,MoviePy 的灵活性使其适用于多种视频编辑场景,适合自动化内容制作与优化。

Mr数据杨 3413

如何选择深度强化学习算法:MuZero/SAC/PPO/TD3/DDPG/DQN/等算法

如何选择深度强化学习算法:MuZero/SAC/PPO/TD3/DDPG/DQN/等算法

丨汀、的博客 5222

Ruby on Rails 3.1 自导学教程示例项目

Ruby on Rails 3.1 自导学教程示例项目 本教程基于GitHub上的开源项目 ror-example,旨在引导初学者和开发者如何通过Ruby on Rails 3.1框架构建一个简单应用,并逐步添加功能。此项目展示了从零开始创建应用、实现用户认证、模型关联到构建完整流程的方法。 1. 项目介绍 ror-example 是一个利用Ruby on Rails 3.1编写的教学项目,它以自...

gitblog_00916的博客 776

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

heroku_san安装教程:Rails 3+、Rails 2与Sinatra三种框架如何快速接入Heroku部署

heroku_san 是一款面向 Ruby 开发者的 Heroku 部署辅助工具,通过一组强大的 Rake 任务,帮你把同一份代码快速部署到多个 Heroku 应用(生产、预发、演示环境)上。本教程将手把手教你在 Rails 3+、Rails 2 和 Sinatra 三种框架中完成 heroku_san 的安装与基础配置,零基础也能一步到位。 ## 📦 它是什么?能帮你做什么? 在接触安装之

gitblog_00968的博客 860

精雕软件(JDpaint) 5.5 绿色版

精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版精雕软件(JDpaint) 5.5 绿色版

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

Ruby On Rails 笔记1——Rails 入门

突然想跟着官方文档把Ruby On Rails过一遍,把一些有用的记下来就可以一直看了,do它!注:官网是英文文档,我自己翻译了一下,不确保完全准确,只供自己学习开发使用。

Blue___Ocean的专栏 1160

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

Deep Cloneable多版本Rails支持:从Rails 3到Rails 8的完整兼容性指南

Deep Cloneable是一个强大的Rails ActiveRecord扩展gem,它为每个ActiveRecord::Base对象提供了深度克隆功能,支持用户指定关联关系的完整复制。这个gem最令人印象深刻的特点之一就是它从Rails 3.2到最新的Rails 8.0都保持了完美的兼容性!🚀 ## 🔍 Deep Cloneable的兼容性范围 Deep Cloneable支持广泛的R

gitblog_00117的博客 1022

Rails 3.1 发行说明精读:四大核心特性、升级配置全清单与这些特性在现代 Rails 源码中的存续

本篇基于 Rails 官方仓库中的 [3.1 发行说明](https://link.gitcode.com/i/b99ca096451ee45279b4bb4119792d6b) 展开精读。读完你不仅能完整掌握 Rails 3.1 的四大新特性(HTTP Streaming、可逆迁移、Asset Pipeline、jQuery 默认化)和逐文件的升级操作清单,还能通过当前仓库(版本 [8.2.0.

gitblog_01050的博客 899

2024 最新 Ruby on Rails 入门指南:从安装到实战的完整教程

Ruby on Rails(简称 Rails)是一个使用 Ruby 语言编写的开源 Web 应用框架,遵循 MVC 架构模式,强调简洁、高效和约定优于配置的原则,被广泛应用于 Web 开发领域。本教程将带你快速掌握 Rails 的核心概念和使用方法,从零开始构建你的第一个 Rails 应用。 ## 为什么选择 Ruby on Rails? Rails 自 2004 年发布以来,凭借其"约定优于

gitblog_00789的博客 1124

Rails New 快速入门教程

Rails New 快速入门教程 欢迎来到 Rails New 的快速入门教程。此项目旨在帮助开发者高效启动基于 Ruby on Rails 的现代应用程序。下面是关于项目关键要素的详细介绍,确保您能够快速理解和上手。 1. 项目目录结构及介绍 Rails New 生成的应用遵循标准的 Rails 目录结构,每个目录都有其特定的目的: app:核心应用层,包含 controllers(控制器)...

gitblog_00509的博客 476

Rails3教程系列之六:从Rails2到Rails3

Rails3教程系列之六:从Rails2到Rails3 RailsRackActiveRecordXMLrubygems 出处: oreilly   趁着上班前写一段 @@   那么从前面的教程中我们学习了如何创建一个简单的博客应用, 我个人觉得无论你是新手还是从rails2过来, rails3还是比较容易上手的, 现在我们就来看下rails3相比rai

emerald0106的专栏 724

FullCalendar Rails 项目教程

FullCalendar Rails 项目教程 1. 项目介绍 FullCalendar Rails 是一个用于 Ruby on Rails 应用的资产 gem,它集成了 Adam Shaw 开发的优秀 jQuery FullCalendar 插件。通过使用这个 gem,开发者可以在 Rails 应用中轻松集成 FullCalendar,而无需手动下载和安装所有 FullCalendar 的资产文...

gitblog_00501的博客 917
上一篇: (转)RoR部署方案深度剖析
下一篇: 在Linux里设置环境变量的方法(export PATH)
xinlanzero
博客等级 码龄25年 10粉丝 132原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值