扔掉mfc的那些register函数(太丑了!),继承即是注册,还带配置:
class Railtie
class << self
def subclasses
@subclasses ||= []
end
def inherited(base)
unless base.abstract_railtie?
base.send(:include, self::Configurable)
subclasses << base
end
end
end
end
#mongoid,用tap就像unix的tap
def as_document
attributes = raw_attributes
attributes.tap do |attrs|
relations.select { |name, meta| meta.embedded? }.each do |name, meta|
relation = send(name, false, :continue => false)
attrs[name] = relation.as_document unless relation.blank?
end
end
#[self.name, @@under_path, const_name.to_s, path].compact.join("::")
# 这种写法可以有效的去除 path, @@uner_path是否为空的判断!
def autoload(const_name, path = @@at_path)
full = [self.name, @@under_path, const_name.to_s, path].compact.join("::")
location = path || Inflector.underscore(full)
if @@eager_autoload
@@autoloads[const_name] = location
end
super const_name, location
end
分享到:
相关推荐
这个“Rails项目源代码”是一个使用Rails构建的图片分享网站的完整源代码,它揭示了如何利用Rails的强大功能来创建一个允许用户上传、分享和浏览图片的应用。 1. **Rails框架基础**: Rails的核心理念是DRY(Don't...
本压缩包中的"Ruby on Rails入门经典代码"提供了新手学习Rails的宝贵资源,帮助初学者快速掌握这个强大的框架。 1. **Rails基础知识**: - MVC架构:Rails的核心设计模式,模型负责数据处理,视图负责展示,控制器...
在Ruby on Rails的源代码中,我们可以深入理解其内部工作原理,包括路由、数据库交互(ActiveRecord)、模板引擎(ERB或Haml)、测试工具(Rspec或Minitest)等核心组件。以下是一些关键知识点的详细解释: 1. **...
《享洗自助洗衣系统Rails代码规范详解》 在软件开发过程中,代码规范是提高代码质量、增强团队协作效率的关键因素。针对北京交通大学享洗自助洗衣系统的开发,项目负责人王子杰制定了详尽的Ruby on Rails(简称...
Ruby on Rails,简称Rails,是一种基于Ruby编程语言的开源Web应用程序框架,它遵循MVC(模型-视图-控制器)架构模式,旨在提高开发效率和代码的可读性。本示例源码提供了使用Ruby on Rails进行实际项目开发的具体...
7. **Rails 命令行工具和 Rake 任务**: Rails 提供了一系列命令行工具,如 `rails server`、`rails generate` 和 `rails dbconsole`,帮助开发者快速启动、生成代码和操作数据库。Rake 是一个构建工具,用于执行任务...
`GoOnRails`是专门为Rails开发者设计的一个生成器,它允许在Rails应用中集成Go代码,创建Go API服务。这个工具简化了在Rails项目中使用Go进行后端处理的流程,使开发者可以利用Go的性能优势处理高并发请求,同时保留...
Rails还提供了辅助方法,如链接生成、表单构建等,以简化视图代码。 6. **控制器** 控制器是MVC架构中的中枢,处理HTTP请求并调用模型进行业务处理。它负责填充视图的数据,并决定应重定向到哪个视图。Rails中的...
“Rbuy for Rails源代码”这一标题表明我们关注的是一个名为“Rbuy”的项目,它是为Rails框架开发的一个特定组件或应用。Rails是Ruby on Rails的简称,是一个基于Ruby语言的开源Web应用程序框架,遵循MVC(模型-视图...
本压缩包中的"web开发之rails最新调试通过购物车代码"是关于使用Rails进行Web应用开发的一个实例,特别是针对购物车功能的实现。 购物车是电商网站的核心部分,它允许用户选择商品并保存这些选择以便后续购买。在...
在本文中,我们将深入分析 Ruby on Rails 2.0.2 的源代码,特别是关注其启动过程。 首先,Rails 的启动始于 `config/boot.rb` 文件。这个文件是 Rails 应用程序的入口点,负责检查 Rails 是否已启动。如果没有,它...
在`sample_app`中,你可以看到如何组织代码以符合Rails的约定,如目录结构、控制器、模型和视图的创建。 2. **Gemfile和依赖管理**:在项目根目录下,`Gemfile`定义了项目所依赖的Ruby库(Gems)。通过`bundle ...
《初识Ruby on Rails:源代码解析》 Ruby on Rails(简称Rails)是一个基于Ruby语言的开源Web应用程序框架,它遵循MVC(Model-View-Controller)架构模式,旨在简化Web开发过程,提高开发效率。本资料包包含了...
标题中的“Web开发敏捷之道--应用Rails进行敏捷Web开发 之 Depot代码”表明这是一个关于使用Ruby on Rails框架进行敏捷Web开发的示例项目,名为Depot。Ruby on Rails(简称Rails)是一个开源的Web应用程序框架,它...
该压缩包文件包含了该书的源代码示例,帮助读者深入理解Rails2版本中的各种开发实践和技术。 在Rails2这个版本中,主要知识点包括: 1. **MVC架构**:Rails遵循Model-View-Controller(MVC)设计模式,将业务逻辑...
Rails则是利用Ruby构建Web应用的框架,它强调“约定优于配置”(Convention over Configuration,CoC),大大减少了开发者需要写的配置代码。 在Ruby on Rails中,Model负责处理数据和业务逻辑,通常是与数据库交互...
通过这种方式,Cucumber-Rails帮助团队确保代码按照预期运行,同时提供了一种非技术人员也能理解的测试文档。 在`support`目录下,开发者可以放置一些辅助文件,例如World类(用于扩展Cucumber的上下文)、Hooks...
作者特别提到了“CRUD懶人大法Scaffold”,它是一种通过Rails自动生成代码的方式来快速搭建基本的CRUD操作,这大大简化了开发流程,使得开发者可以将更多的精力放在业务逻辑的实现上。 此外,书中还介绍了一些Rails...
DRY原则强调避免代码重复,而约定优于配置则意味着Rails提供了许多默认设置,使得开发者可以快速搭建项目,减少了不必要的配置工作。 在Rails中,MVC架构是非常关键的一部分。Model代表数据模型,负责与数据库交互...
Rails由David Heinemeier Hansson在2004年创建,其设计理念是强调代码的简洁性、DRY(Don't Repeat Yourself)原则和开发效率。 Rails的核心特性包括: 1. **约定优于配置**(Convention Over Configuration):...