Rails 正在参加 2021 年度 OSC 中国开源项目评选,请投票支持!
Rails 在 2021 年度 OSC 中国开源项目评选 中已获得 {{ projectVoteCount }} 票,请投票支持!
2021 年度 OSC 中国开源项目评选 正在火热进行中,快来投票支持你喜欢的开源项目!
2021 年度 OSC 中国开源项目评选 >>> 中场回顾
Rails 获得 2021 年度 OSC 中国开源项目评选「最佳人气项目」 !
授权协议 MIT
开发语言 Ruby 查看源码 »
操作系统 跨平台
软件类型 开源软件
所属分类 Web应用开发Web框架
开源组织
地区 不详
投 递 者 不详
适用人群 未知
收录时间 2008-09-15

软件简介

Ruby on Rails 是一个用于开发数据库驱动的网络应用程序的完整框架。Rails基于MVC(模型- 视图- 控制器)设计模式。从视图中的Ajax应用,到控制器中的访问请求和反馈,到封装数据库的模型,Rails 为你提供一个纯Ruby的开发环境。发布网站时,你只需要一个数据库和一个网络服务器即可。

Ruby On Rails是一个用于编写网络应用程序的软件包。它基于一种计算机软件语言Ruby,给程序开发人员提供了强大的框架支持。你可以用比以前少的多的代码和 短的多的时间编写出一流的网络软件。比较著名的社区网站 43things.com、 odeo.com 和 basecamphq.com 就是用 Ruby On Rails 编写的。

Ruby On Rails 的指导原则是”不要重复你自己”(Don’t Repeat Yourself, 或DRY).意思是说你写的代码不会有重复的地方。比如以往数据库的接口往往是类似的程序代码但是在很多地方都要重复用到。这无论是给编写还是维护都造成 了很大的代价。相反,Ruby On Rails给你提供了绝大多数的支持,让你只需要短短的几行代码就可以实现强大的功能。而且,Rails提供了代码生成工具,让你甚至不需要编写一行代码 就实现强大的管理程序。

Ruby On Rails通过reflection和runtime extension减少了对configuration文件的依靠,这和Java,C#语言的方向有很大不同,让你减少了很多配置和部署的麻烦,但是性能上却完全可以应付一般网站的需求。

Rails 支持各类网络服务器和数据库。在服务器方面,我们推荐Apache、 lighttpd 或 nginx 代理至 Mongrel (或者使用FastCGI)。 数据库方面,你可以采用MySQL、PostgreSQL、 SQLite、 Oracle、 SQL Server、 DB2、 或其他任何我们支持的系统。 Rails可以在各类操作系统上运行,不过我们建议采用基于'nix的系统进行开发。

展开阅读全文

代码

的 Gitee 指数为
超过 的项目

评论 (23)

加载中
呵呵
2018/07/31 12:30
回复
举报
2011/06/20 23:36
回复
举报
2012/08/21 14:28
回复
举报
又一款参考 Rails 的 Java Web 框架! ActiveWeb
2012/10/08 11:38
回复
举报
@虫虫 说两天内就能精通 RubyRails ,你们信吗?
2012/10/25 11:38
回复
举报
2012/12/25 17:37
回复
举报
Rails 性能真心不能跟 Java 比,差距太大了40。跟OSC页面渲染速度相比是2位数和3位数的差别(单位:ms),即使两者都用了缓存的情况下。
2013/04/10 17:38
回复
举报
我都用rails了我还关心性能?本来就是小公司用的东西
2020/08/16 21:58
回复
举报
Rails 可以做到 让你不怎么会Ruby,都能开发Web应用,元芳,你怎么看?
2013/05/08 12:50
回复
举报
该评论暂时无法显示,详情咨询 QQ 群:912889742
更多评论
发表了资讯
2021/12/17 07:49

Rails 7.0 发布,实现愿景:真正的全栈 Web 开发方法

>>>>>> Gitee 架构师正在招募【Ruby 高级开发工程师】,有意向者联系邮箱:luoyaxin#oschina.cn。gitee.com 基于 Rails 开发,欢迎简历。 Rails 是一个 Web 应用程序框架,是 Ruby 最早也是最出名的一个框架,其中包括根据模型-视图-控制器(MVC) 模式,创建 Web 应用程序所需的所有内容 。Rails 可以说是 MVC 开发的先驱者,了解 MVC 模式是了解 Rails 的关键。 Rails 7.0 是一个大版本,实现了一个愿景:一种真正的全栈 Web ...

24
4
2021/03/27 08:14

Mimemagic 许可证问题影响 50 万余项目

上周,一个名为 mimemagic 的 Ruby 库因许可证问题引发了包括 Ruby on Rails 在内的数十万个项目的混乱。 事情的起因是一个名 Bastien Nocera 的 shared-mime-info 的软件库维护者通知了 Ruby 库 mimemagic 的维护者 Daniel Mendler,该库包含了 Nocera 的代码,而 shared-mime-info 是在 GPLv2 许可证下授权的,mimemagic 是在 MIT 许可证下授权的,两者并不兼容。 Mendler 得知此事后向 Nocera 表示感谢,并立即将最新的 0.4....

1
1
发表于大前端专区
2021/02/11 07:23

Rails 6.1.2 发布,Ruby Web 应用开发框架

Rails 是一个 Web 应用程序框架,其中包括根据模型-视图-控制器(MVC) 模式创建数据库支持的Web应用程序所需的所有内容 。了解 MVC 模式是了解 Rails 的关键。 Rails 6.1.2 正式发布,以下是其更新内容: Active Support ActiveSupport::Cache::MemCacheStore现在为addresses参数接受一个明确nil。 config.cache_store = :mem_cache_store, nil # is now equivalent to config.cache_store = :mem_cache_store # a...

2
0
发表于数据库专区
2020/12/11 08:24

Rails 6.1 稳定版发布:支持水平分区、改进多数据库支持、Strict Loading

Rails 6.1 稳定版已发布,其开发团队表示,过去的几个月里他们实现了对多数据库支持的改进、支持在后台销毁关联异步(Associations Async)进程以及将错误转化为对象等。 按数据库连接进行切换 Rails 6.1 提供了按数据库切换连接的功能。在 6.0 中,如果切换到读取角色,那么所有的数据库连接也会切换到读取角色。但在 6.1 中,如果在配置中将legacy_connection_handling设置为false,Rails 支持通过调用相应抽象类上的connected...

3
2
发表于软件架构专区
2019/12/19 07:33

Rails 5.2.4.1 与 6.0.2.1 发布,修复漏洞

Rails(Ruby on Rails)5.2.4.1 与 6.0.2.1 发布了,两个版本都主要是为了解决漏洞 CVE-2019-16782,这是一个信息泄漏/会话劫持漏洞,攻击者可以通过预测时间而找到并劫持会话 ID,进而发起攻击。 Rails 是一个基于 MVC 模型的 Web 应用开发框架。 以下列表分别对应 5.2.4.1 版本中每个 gem 的更新内容: Action Cable CHANGELOG Action Mailer CHANGELOG Action Pack CHANGELOG Action View CHANGELOG Active Job CHANGELOG Ac...

2
1
发表于开发技能专区
2019/11/07 07:28

Rails 6.0.1 发布,改进新增功能以及 Bugfix

Rails 6.0.1 稳定版已发布,这也是 6.0 系列的首个维护版本。其中 Rails 6.0 值得关注的更新包括:用于处理电子邮件的 Action Mailbox、提供富本文编辑功能的 Action Text、对多数据库的支持、对并行测试的支持、默认使用 Webpacker 作为 JavaScript 打包器,以及默认使用 Zeitwerk 作为 Ruby 代码加载器。 根据项目在 GitHub 上更新的版本说明,Rails 6.0.1 的更新内容主要是对 6.0 新增的功能进行改进,以及修复部分问题。 Ac...

3
0
发表于大前端专区
2019/08/21 07:38

Rails 6.0 稳定版发布: 新增 Action Mailbox 和 Action Text 功能、支持多数据库、并行测试、默认使用 Webpacker 和 Zeitwerk

Rails 6.0 稳定版已正式发布,下面直接来看看有哪些值得关注的更新:用于处理电子邮件的 Action Mailbox、提供富本文编辑功能的 Action Text、对多数据库的支持、对并行测试的支持、默认使用 Webpacker 作为 JavaScript 打包器,以及默认使用 Zeitwerk 作为 Ruby 代码加载器。 Rails 团队表示,虽然稳定版的发布日期比预期中晚了一些 —— 因为他们耗费了大量时间来检查 Rails 6 的可靠性,但它的预览版早已在 GitHub, Shopify ...

19
3
发表于服务端专区
2019/08/01 07:22

Rails 6.0.0 rc2 发布,做了 172 次更改

Rails 6.0.0 rc2 已经发布,是一个用于开发数据库驱动的网络应用程序的完整框架。 可以在 Rails 6.0.0 第一次测试版中了解的新内容。从 Action Mailbox 到 Action Text,默认情况下,多个数据库支持、并行测试和 WebPacker 处理 JavaScript,这是 Rails 向前迈出的一大步。 自 RC1 以来,已提交了 172 次更改。如下: 使范围性检查一致 所有者模型下的命名空间关联扩展模块 修复错误查询 Param 时 DebugExceptions 出错的问题 ...

1
0
发表于大前端专区
2019/04/29 07:26

Rails 6.0.0 RC1 发布,Ruby Web 应用开发框架

Rails 6.0.0 首个 RC 版已于昨天发布,这是发现 bug 的最好时机,因为官方表示会优先处理这个阶段发现的 bug,并在发布 RC2 的时候进行修复,如果2、3周内不再发现 bug,Rail 6 将正式发布。 Rails 6.0.0 RC1 的更新内容如下: 将错误模型(Model errors)视为对象 检查Zeitwerk的兼容性 针对旧作业重新使用重试逻辑(retry logic) 活动记录(Active Record)属性的访问速度提升了 10% 点此查看完整的变更列表。 Rails 是一个...

5
0
发表于服务端专区
2019/03/23 06:39

Rails 5.2.3 RC1 发布,Ruby Web 应用开发框架

Rails(Ruby on Rails) 5.2.3 RC1 发布了,如果此版本中没有发现什么回退,那么 5.2.3 正式版本将于本月 27 日发布。 Rails 是一个基于 MVC 模型的 Web 应用开发框架。 以下列表分别对应此版本中每个 gem 的更新内容: Action Cable CHANGELOG Action Mailer CHANGELOG Action Pack CHANGELOG Action View CHANGELOG Active Job CHANGELOG Active Model CHANGELOG Active Record CHANGELOG Active Storage CHANGELOG Active S...

0
1
发表于大前端专区
2019/03/22 07:38

Ruby on Rails 曝路径穿越与任意文件读取漏洞

开发者 John Hawthorn 公开了 Ruby on Rails 上的一个路径穿越与任意文件读取漏洞。 John 指出,Action View 中可能存在文件内容泄露漏洞。特制的 accept headers 并调用 render file,可以导致目标服务器上的任意文件被渲染,从而泄露文件内容。控制器中受影响的代码如上图所示。 漏洞分析 在控制器中通过render file形式来渲染应用之外的视图,因此在 actionview-5.2.1/lib/action_view/renderer/template_renderer.rb:22 中会...

0
4
2019/02/27 07:19

Rails 6.0.0 beta2 发布,开源 Web 应用框架

Rails 6.0.0 beta2 发布了。 作为 Rails 6 的第二个 beta 版本,新版在修复了一系列 Bug 的同时,新增了一些小特性。但该版本的更新亮点在于:切换到 Xavier 的新库 Zeitwerk 来处理自动加载。这对开发团队来说是一个结构性的大改动,更详细地了解 Zeitwerk 可以查阅 Xavier 的一篇长文。 其他方面的事情大致与上个版本相同,你可以查阅 Rails 6.0.0 beta1 的发布新闻来了解 6.0 版本的图景,也可以查阅提交日记了解上个版本后的...

5
0
2019/01/20 07:18

Rails 6.0.0 beta1 发布, Webpacker 作为默认 JS 打包工具

Ruby on Rails 是一个用于开发数据库驱动的网络应用程序的完整框架。Rails 基于MVC(模型- 视图- 控制器)设计模式。从视图中的 Ajax 应用,到控制器中的访问请求和反馈,到封装数据库的模型,Rails 为你提供一个纯 Ruby 的开发环境。发布网站时,你只需要一个数据库和一个网络服务器即可。 更新内容如下: 新增 Action Mailbox 用于邮件处理 新增 Action Text 以 Trix editor 为基础的富文本编辑器 多数据库支持 并行测试 默认...

3
6
发表于大前端专区
2018/12/05 07:12

开源 Web 应用框架 Rails 5.2.2 正式发布

Rails 5.2.2 已发布,有关变化内容,请查看下面的变更说明: Action Cable CHANGELOG Action Mailer CHANGELOG Action Pack CHANGELOG Action View CHANGELOG Active Job CHANGELOG Active Model CHANGELOG Active Record CHANGELOG Active Storage CHANGELOG Active Support CHANGELOG Railties CHANGELOG 源码下载 https://github.com/rails/rails/releases/tag/v5.2.2 Ruby on Rails 是一个用于开发数据库驱动的网络应用程序...

2
4
发表于AI & 大数据专区
2018/11/28 08:10

Rails 4.2.11, 5.0.7.1, 5.1.6.1 和 5.2.1.1 发布

Rails 4.2.11, 5.0.7.1, 5.1.6.1 和 5.2.1.1 已发布。这些版本包含以下重要的安全修复程序,建议用户尽快升级: CVE-2018-16476 Broken Access Control vulnerability in Active Job Rails 5.2.1.1 还包括以下安全修复: CVE-2018-16477 Bypass vulnerability in Active Storage 各版本的详细更新请查看: Changes in 4.2.11 Changes in 5.0.7.1 Changes in 5.1.6.1 Changes in 5.2.1.1 源码下载:https://github.com/rails/ra...

0
2
发表于大前端专区
2018/08/08 07:44

如约而至,开源 Web 框架 Rails 5.2.1 现已推出正式版

上周我们报道过,Rails 5.2.1 将会于本周发布正式版,开发团队没有食言,现已发布 Rails 5.2.1 正式版。 有关变化内容,请查看下面的变更说明 Action Cable CHANGELOG Action Mailer CHANGELOG Action Pack CHANGELOG Action View CHANGELOG Active Job CHANGELOG Active Model CHANGELOG Active Record CHANGELOG Active Storage CHANGELOG Active Support CHANGELOG Railties CHANGELOG 源码下载 https://github.com/rails/r...

4
1
发表于AI & 大数据专区
2018/07/31 08:30

开源 Web 框架 Rails 5.2.1.RC1 发布,预计下周推出正式版

Rails 5.2.1.RC1 已发布,Ruby on Rails 是一个用于开发数据库驱动的网络应用程序的完整框架。Rails基于MVC(模型- 视图- 控制器)设计模式。从视图中的Ajax应用,到控制器中的访问请求和反馈,到封装数据库的模型,Rails 为你提供一个纯Ruby的开发环境。发布网站时,你只需要一个数据库和一个网络服务器即可。 开发团队表示,如果没有出现回归错误,计划将于下周一,2018年8月6日发布正式版。 变化说明 Action Cable CHANGELOG...

2
2
发表于AI & 大数据专区
2018/04/16 07:31

Rails 5.2.0 发布,开源网络应用框架

Rails 5.2.0 发布。Ruby on Rails 是一个用于开发数据库驱动的网络应用程序的完整框架。Rails基于MVC(模型- 视图- 控制器)设计模式。从视图中的Ajax应用,到控制器中的访问请求和反馈,到封装数据库的模型,Rails 为你提供一个纯Ruby的开发环境。发布网站时,你只需要一个数据库和一个网络服务器即可。 Rails 5.2 发布亮点: Active Storage Redis Cache Store HTTP/2 Early Hints Credentials Content Security Policy 其他更...

2
1
发表于软件架构专区
2018/03/31 07:30

Rails 5.0.7 与 5.1.6 发布,开源网络应用框架

Rails 5.0.7 和 5.1.6 发布。Ruby on Rails 是一个用于开发数据库驱动的网络应用程序的完整框架。Rails基于MVC(模型- 视图- 控制器)设计模式。从视图中的Ajax应用,到控制器中的访问请求和反馈,到封装数据库的模型,Rails 为你提供一个纯Ruby的开发环境。发布网站时,你只需要一个数据库和一个网络服务器即可。 与 5.0.6 版本相比发生的变化: Action Cable CHANGELOG Action Mailer CHANGELOG Action Pack CHANGELOG Actio...

2
1
发表于大前端专区
2018/02/05 07:31

Rails 5.2.0 和 5.1.5 candidates 发布 ,恢复编组性能

Rails 5.2.0 和 5.1.5 candidates 发布,这是一个用于开发数据库驱动的网络应用程序的完整框架。Rails基于MVC(模型- 视图- 控制器)设计模式。从视图中的 Ajax 应用,到控制器中的访问请求和反馈,到封装数据库的模型,Rails 为你提供一个纯 Ruby 的开发环境。发布网站时,你只需要一个数据库和一个网络服务器即可。 更新内容: 默认情况下禁用CSP 恢复编组性能 X-Request-Id 包含 Apache 的 @ -signs 完整内容请查看发布主页。...

1
2
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
暂无内容
发表了问答
2016/09/13 23:25

安装使用rails 总不行。。菜鸡求解救

执行rails server 的错误 执行 bundle install的错误 到底该怎么办呢? rails new demo 创建的不能使用 localhost:3000查看。

3
0
发表了问答
2016/04/09 14:24

请问:如何捕获Rails的路由异常?

Rails 框架,当出现浏览器路径访问错误时如何捕获,处理? 清楚的答案 或 思路 或 参考资料 都可以。

2
0
发表了问答
2016/09/20 23:00

rails 中没有的gem 怎么加入?

这个是我的gem 这个是书上的gem 他这个我很多操作都完不成,比如书上的命令: bundle exec guard init 我会出错,bundler: command not found: guard Install missing gem executables with `bundle install` 应该怎么办呢? 求大神解救, 怎么加入gem ?

3
0
发表了问答
2016/08/11 11:26

用好 Rails 中 try 方法

刚刚看到 @moli 写的代码,get 到 try 方法很好用。于是顺便贴一下其 API try(*a, &b) Invokes the public method whose name goes as first argument just like public_send does, except that if the receiver does not respond to it the call returns nil rather than raising an exception. This method is defined to be able to write @person .try(:name) instead of @person .name if @person try calls can be chaine...

1
1
发表了问答
2011/06/07 07:18

使用何种服务器端的 Rails 架构好呢?

有下面这几种方案 具体的配置 Nginx 通用配置: proxy_redirect off; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_max_temp_file_size 0; client_max_body_size 10m; client_body_buffer_size 128k; proxy_connect_timeout 90; proxy_send_timeout 90; proxy_read_timeout 90; proxy_buffer_size 4k; proxy_buffers 4 32k; pr...

3
8
发表了问答
2016/05/20 14:56

Rails4.2 局部视图中的ajax表单无法以post 方法提交,怎么回事?

如题,局部视图中的ajax表单无法以post方法提交访问create,怎么回事? <%= form_for @blog_sort ,remote: true, url: { action: :create,method: :post} do |f| %> <%= f.text_field :sort_name %> <%= f.submit %> <% end %> 上面这是局部视图中的代码,同样的代码放到主制图index.html.erb中就可以。 我看了编译为html的源码,都是一样的。但局部视图中确实以get的方式访问了index方法而不上create,怎么办?急...

1
0
发表了问答
2016/04/13 14:44

rails4.1 开发模式下为什么在控制台所有的日志都显示双列呢?

D, [2016-04-13T14:40:00.609856 #3494] DEBUG -- : (0.1ms) begin transaction D, [2016-04-13T14:40:00.609955 #3494] DEBUG -- : (0.1ms) begin transaction D, [2016-04-13T14:40:00.613431 #3494] DEBUG -- : User Exists (0.2ms) SELECT 1 AS one FROM "users" WHERE "users"."email" = '12312123123' LIMIT 1 D, [2016-04-13T14:40:00.613537 #3494] DEBUG -- : User Exists (0.2ms) SELECT 1 AS one FROM "users" WHERE...

1
0
发表了问答
2016/03/10 00:10

在Rails4.1中如何使用assert_routing() 测试 /posts/1/edit 路由呢?

ruby 2.2 + Rails4.1 我在我的PostsControllTest 中写了一个测试方法 通过assert_routing() 对路由的路径进行测试,但我不知道/posts/1/edit 这个路径该怎么写,求救? 另:当为控制器做功能性测试时如何测试show方法的的访问,因为这个方法好像需要id 和 实例变量啊,该怎么传入呢?

5
1
发表了问答
2014/09/01 17:36

求推荐一款优良的Ruby语言代码审查工具

最近在做Ruby代码审查工作,大神们有什么好的Ruby语言代码审查工具吗?求推荐一款,谢谢!

1
0
发表了问答
2016/01/19 18:07

Rails check if attribute changed

Need to check if a block of attributes has changed before update in Rails 场景:使用 Active record 的 rails 项目 例如 user 表有个 name 字段,在更新用户名之前我们由于某种需求检测 name 字段是否被修改,那么我们通过 /modles/user.rb 产生的对象 user 来检测 name 字段是否被修改: user.name_changed? 更多信息请参考 http://api.rubyonrails.org/classes/ActiveModel/Dirty.html...

1
0
发表了问答
2015/12/25 10:55

ror现在一般用什么服务器架构部署呢

ror现在一般用什么服务器架构部署呢

6
0
发表了问答
2015/11/25 19:03

ruby on rails开发中如何将highcharts的柱状图和highmaps的国家地图放在一个页面下

highcharts的JS文件和highmaps的JS文件在通用布局中冲突怎么解决

3
0
发表了问答
2014/11/12 10:02

哪位大神能帮Rails正则表达式转换成java的?

我有两个Rails正则表达式, /\A[a-z0-9_\-@\.]*\z/i /\A([^@\s]+)@((?:[-a-z0-9]+\.)+[a-z]{2,})\z/i 哪位大神能帮我转换成java的吗,头都看晕了,谢谢

7
0
发表了问答
2015/07/23 14:01

关于 rails中form_for 默认选中的问题

<% if params[:action] == "edit"%> <%= radio_button("permission","father_id","father") %> 一级菜单<br/> <%= radio_button("permission","father_id","child") %> 二级菜单 <% else %> <%= radio_button("permission","father_id","father") %> 一级菜单<br/> <%= radio_button("permission","father_id","child") %> 二级菜单 <% end %> 如果是edit修改的action的话让它默认选中一个radio(并判断是一...

3
0
发表了问答
2015/07/15 22:30

ubuntu14 下 ruby on rails 安装错误

ubuntu下通过RVM安装的ruby ,在安装rails时报错。。。。。。

6
0
发表了问答
2015/07/16 11:35

rails new project 总提示bundle 缺少依赖组件

rails new project 总提示bundle 缺少依赖组件 ,安装完一个又提示另一个 ,有木有一次性安装完所有组件的,或者说这个bundl是干啥的,是否可以忽略

10
0
没有更多内容
加载失败,请刷新页面
点击加载更多
加载中
下一页
23 评论
272 收藏
分享
OSCHINA
登录后可查看更多优质内容
返回顶部
顶部