`

在 Rails 之外使用 ActiveRecord

阅读更多
今天要寫一個 cron script 要用到資料庫,因為已經被 Active Record 慣壞了,懶得用 SQL。所以就花點時間 Survey 怎麼再 Rails 之外使用 Active Record。


簡單版

1. require 相關的 lib

require "rubygems"
require_gem "activerecord"

2. 建立 DB Connection

ActiveRecord::Base.establish_connection(
:adapter => "mysql",
:username => "root",
:host => "localhost",
:password => "secret",
:database => "plants_db"
)

3. 宣告 ActiveRecord Class

class MyClass < ActiveRecord::Base
end


如此就可以開始使用啦。不過如果遇到你必須一次操作多個 DB 的情況時,你可以用比較 Rails 一點的 Config 來寫作

加入 Config 的用法

1. require 相關的 lib

require "rubygems"
require_gem "activerecord"



2. 撰寫 DB 設定檔 ,我們仿 Rails 寫一個 database.yml

development:
__adapter: mysql
__host: localhost
__username: root
__password:
__database: lala



3. 將設定檔讀進來,讀到一個 $config 變數

$config = YAML.load_file(File.join(File.dirname(__FILE__), 'database.yml'))



4. 宣告 ActiveRecord 物件,記得加上 establish_connection

class MyClass < ActiveRecord::Base
establish_connection $config[''development]
end


5. 開始快快樂樂使用 ActiveRecord 吧
分享到:
评论

相关推荐

    中文版的Ruby On Rails实践(PDF)

    在《Ruby On Rails实践》这本书中,读者可以期待学习到如何搭建Rails开发环境,创建第一个Rails应用,了解数据库设计和ActiveRecord的使用,掌握路由配置,深入理解控制器和视图的工作原理,以及如何进行测试和调试...

    ruby on rails 101

    引用自Nathan Torkington的话:“使用Ruby on Rails就像观看功夫电影一样,看似弱小的新手框架却能够用各种创造性的方式打败众多强大的对手。”这句话生动地描述了Ruby on Rails的独特之处以及它在Web开发领域的影响...

    textacular:Textacular公开了PostgreSQL全文搜索功能,并允许您声明全文索引。 Textacular将使用named_scope方法扩展ActiveRecord,使搜索变得轻松而有趣!

    在Rails之外的ActiveRecord require 'textacular' ActiveRecord :: Base . extend ( Textacular ) 用法 您的模型现在可以使用搜索方法: #basic_search方法是您可能期望的:从字面上看您要发送给它的内容,而对...

    rails资料集合最新

    Rails 3是Rails的一个重要版本,引入了ActiveModel、ActiveResource和ActionMailer等关键组件的改进,以及ActiveRecord的查询接口增强,使得数据库交互更加简洁。 2. **rails3入门教程.pdf**:这份PDF教程可能是...

    Agile Web Development with Rails中文版 3rd Edition

    **17.7 在迁移任务之外操作数据库结构** 介绍了如何在没有迁移的情况下直接修改数据库结构。 **17.8 管理迁移任务** 讲解了如何管理已经执行过的迁移脚本。 #### 十八、ActiveRecord第一部分:基础 这部分介绍...

    Complex Rails system_Rails_优化_

    1. **避免在循环中进行数据库查询**:将查询移到循环之外,减少不必要的数据库交互。 2. **减少视图复杂性**:保持视图简洁,避免嵌套过深的辅助方法和复杂的模板逻辑。 3. **利用惰性枚举**:对于大型集合,使用`...

    Agile Web Development with Rails 4th -Final Edition

    除此之外,书中还涵盖了部署和优化Rails应用的策略,包括如何配置服务器、使用Nginx或Apache作为前端代理,以及如何利用 Passenger、Unicorn 或Puma等Web服务器运行Rails应用。 最后,书中还涉及到了Rails的安全性...

    Ruby_on_Rails实践.rar

    总结来说,Ruby on Rails实践涉及的内容广泛,包括Ruby语言基础、Rails框架的MVC架构、内置工具的使用、路由配置、设计模式、测试以及社区资源的利用。深入理解并熟练运用这些知识点,将能有效提升开发效率,构建出...

    Rails 4 Days - Chinese

    书中还会涵盖ActiveRecord,这是Rails用于数据库操作的ORM(Object-Relational Mapping)库,让开发者可以使用Ruby代码直接操作数据库,无需编写SQL语句。 书中还将介绍Rails的测试驱动开发(TDD)理念,包括使用...

    Ruby On Rails For Dummies

    在 Rails 中,Model 层通常对应于 ActiveRecord 类,通过 ActiveRecord,可以方便地进行数据的增删改查操作。 - **View 层**:用于展示数据,即用户界面的设计。Rails 提供了丰富的模板引擎来帮助开发者快速构建美观...

    Rails2.0资料

    除了上述主要改进之外,Rails 2.0还包含了许多其他的小改进和特性,例如: - **辅助函数访问便捷性**:开发者可以直接在视图中访问各种辅助函数,而无需显式导入。 - **环境文件去冗余**:提供了指导帮助开发者清理...

    Crafting Rails Applications

    例如,书中可能包括了关于ActiveRecord的工作原理、Rails的初始化流程等内容,这些都是理解并充分利用Rails的关键知识。 4. **实践案例分析:** - 除了理论知识之外,本书还提供了丰富的实践案例分析,通过具体的...

    Ruby on Rails: the scope method

    除了在模型中定义`scope`之外,还可以使用`has_scope` gem来将查询条件映射到控制器的过滤器中。这使得可以根据HTTP请求参数自动应用查询条件,从而大大简化了控制器的代码。例如: ```ruby # 在模型中定义scope ...

    Ruby on Rails 2.0的新特性介绍

    除此之外,Rails 2.0还包括其他一些改进,如性能提升、数据库迁移工具的强化、ActiveRecord的优化以及测试框架的增强等。这些更新旨在简化开发流程,提高代码质量,使Rails成为更强大、更易用的Web开发框架。 总的...

    rails 常见灵异错误汇总

    Rails框架虽然强大且灵活,但其复杂性也意味着可能出现各种意料之外的问题。以下是一些常见的Rails错误及其解决方法。 1. **NoMethodError**:这是Rails中最常见的错误之一,通常表示尝试调用一个不存在的方法。...

    Wrox.Professional.Ruby.on.Rails.Feb.2008

    在Ruby on Rails中,Ruby语言的灵活性和表达性被充分利用,使得代码简洁而易读。这本书将详细讲解Ruby语言的基础,包括变量、数据类型、控制结构、类和对象、模块以及元编程等核心概念。通过深入理解这些基础知识,...

    Web开发敏捷之道-应用Rails进行敏捷Web开发-第三版.rar

    17.7 在迁移任务之外操作数据库结构 231 17.8 管理迁移任务 231 第18章 ActiveRecord第一部分:基础 233 18.1 表和类 233 18.2 字段和属性 234 18.3 主键与ID 237 18.4 连接数据库 238 18.5 CRUD 242 18.6 聚合与...

    Ruby+on+Rails实践

    除此之外,RoR的ActiveRecord ORM(Object-Relational Mapping)是另一个核心组件。它使得Ruby对象可以直接操作数据库,通过继承ActiveRecord::Base类,你可以定义属性,创建和执行SQL查询,无需手动编写大量SQL语句...

    actions_as_api:使在Rails中创建API响应变得轻松而有趣

    理论上,除了Rails之外,它还可以与任何ruby应用程序和任何数据库(现成的支持ActiveRecord , Mongoid和ActiveResource )一起使用,因为它几乎没有依赖性。 lib在使用或等平台在生产中生成响应和进行测试时非常...

Global site tag (gtag.js) - Google Analytics