- 浏览: 1253052 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (729)
- Java_about (144)
- Spring_Hibernate_Struts_OpenSource (27)
- linux_unix (62)
- life_sth (21)
- js_css_html_xml_nodejs (69)
- design_pattens (1)
- Perl (8)
- php_ecshop (4)
- DB_Mysql_Oracle_Informix_SqlServer (43)
- JSTL (8)
- Testing_自动化测试 (42)
- DB_ID_UUID (4)
- SEM_SEO (1)
- english_study_improvement (4)
- SVN_Git (9)
- WebService_SOA_CloudComputing (3)
- E-Commerce (1)
- Lucene_Solr (7)
- others (2)
- Regex (2)
- tomcat_jetty (8)
- zeroc-ice (1)
- java_excel (5)
- ant_maven_gradle (5)
- Unity_VR_AR_C# (2)
- jmeter (1)
- XPath_dom4j (1)
- Ruby_and_Rails (68)
- write_a_rails (17)
- manage_and_team (1)
- getting_real (1)
- ubuntu (20)
- git_and_git_flow (7)
- TODO (1)
- PM_design (2)
- Python_and_Django (8)
- NoSql_mongo_redis (24)
- C/C++ (3)
- vi_vim_gvim (0)
- c#_.Net_windows编程_dll (10)
- Php_and_Yii (9)
- Android_IOS (31)
- Mysql (5)
- sa_运维_network_硬件 (37)
- lua (2)
- c_cpp_VisualStudio (21)
- 硬件-RM-Arduino (6)
最新评论
-
shenkun58:
...
NoClassDefFoundError: Could not initialize springframework.BeanCreationException -
liaojia1:
正解,感谢
NoClassDefFoundError: Could not initialize springframework.BeanCreationException -
flingfox63:
谢谢分享,电脑上有IPV6,导致了Guard启动不了……
ruby错误解决: Address family not supported by protocol - connect(2) -
c39274936:
s = "hello_world_ruby" ...
驼峰格式和下划线格式转换_translation between camel and snake format -
yfj300:
学习了学习了学习了学习了
硬盘基本知识(磁道、扇区、柱面、磁头数、簇、MBR、DBR)
Ruby on rails中Rake的经典教程
rake命令传递参数
rake regular_job:quan_monitor minutes=3000000
minutes=3000000是传递的参数
在rake任务内可以用ENV这个hash来得到,ENV["minutes"]
rake的基本知识补充
最近在用rake结合svn来写一个Daily build报告。
我们平台的后台job大部份都是用rake来实现的,总结一下,用rake写后台job有以下一些好处:
1. rake可以与ruby on rails紧密结合,很方便就可以调用rails框架的一些功能。如:调用model进行数据处理。
2. rake支持调用shell脚本,可以与shell结合使用。
3. ruby大量类库支持。
以下是关于rake的一个经典的教程
原文:Ruby on Rails Rake Tutorial (aka. How rake turned me
into an alcoholic)
引言:作为一个rails的开发者,你可能很熟悉使用rake进行你的测试,或者使用rake
db:migrate运行你的migrations,但是你真的知道Rake的背后故事吗?你意识到可以自己写一个Rake任务或者一个有用的lib吗
?
下面是我们使用Rake任务的例子:
1、给列表中的用户发送邮件
2、每晚数据的计算和报告
3、过期或重新生成缓存
4、备份数据和svn版本(how’s this :
subversion repository
)
5、运行数据处理脚本(sort of,how much is called this )
6、Pouring drinks to get a good buzz on(一句玩笑,是这两位仁兄的风格)
这篇文章中,我们将讨论为什么要创建Rake,和他怎么样帮助我们的rails应用。最好你可以写自己的Rake。
一、历史回顾:make
为了了解Rake的来历,我们先了解一下Rake的爷爷:Make。
让我们回到那个代码块需要编译,解释性语言和iphone还没出现在地球上的时代。
回到那时,我们下载的大型程序,还是一堆源代码和一个shell脚本。这个shell脚本包含了所有需要用来compile/link/build 的代码。你需要运行“install_me.sh”这个脚本,每一行代码将被运行(编译每一行源文件),然后生成一个你能够运行的文件。
对于大多数人这样是不错的,但是对于程序开发人员却是一个不幸。每次你对源代码进行一个小的改动,并进行测试的时候,你需要回到shell脚本,并 重新编译所有的源代码,显然对于大的程序“那是相当的”耗时的。
1977年(作者出生那年,我78年),贝尔实验室的Stuart Feldman创造了“make”。解决了编译时间过长的问题。Make用来编译程序,取得两方面的进步:
Stuart Feldman
(1)Make可以发现哪个文件在上一次编译后改动过,根据这点,再次运行Make时,仅编译改动过的文件。这个很大程序上减少了重新编译大型程序 的时间。
(2)Make可以进行从属跟踪。你可以告诉编译器,源文件A的编译需要源文件B,源文件B的编译需要源文件C,所以Make在编译A时发现B没有 编译,将会先编译B。
可以这样定义:Make是一个可执行程序。像ls或dir一样。让Make理解如何让编译一个项目,需要创建一个makefile文件,描述所有的 源文件和依赖关系。makefiles有自己的语法,你不用去了解。
这些年Make出现了其他的变体,并且被其他的语言使用。事实上,ruby用户在rake出现前也在使用它。
“但是,ruby并不需要编译,我们用它来干嘛?”
是啊。ruby是一个解释性语言,我们不需要编译它的源代码,所以ruby程序员为什么使用它呢?
两个重要的原因:
(1)创建任务
在大型的应用中,你经常编写脚本,在命令行下运行一些任务。比如清除缓存,维护任务,或者迁移数据库。你可以写一个MakeFile来组织你的任务,而不
是写十个不相干的脚本(或者一个复杂的)。这样你可以简单的运行:“make stupid”。
(2)从属任务跟踪
当你开始写一些维护任务的时候,可能发现有些任务的使用可能有重复。比如,“migrate”任务和“schema:dump”都需要链接数据库,这样我
可以创建一个任务”connect_to_database”,使“migrate”和“schema:dump”都依赖
于”connect_to_database”,这样下次运行“migrate”时,”connect_to_database”会先于
“migrate”运行
二、如何得到Rake
几年前,Jim Weirich 在一 个java项目上使用了Make,他发现如果在他的Makefile中写一小段ruby代码 将会带来非常大的方便。所 以他创建了Rake。
内容 请点击~
注:图片均来自英文原文(Pics come from the english page)
本文转自博客:推荐看看~不错哦!
http://blog.thinklet.net/franky/category/rubyrails/
另外一篇这里:
http://jasonseifer.com/2010/04/06/rake-tutorial
P
P
P
+
P
P
P
发表评论
-
ruby计算平方和开方_n次方n次幂
2022-06-28 21:52 522= = = ruby计算平方和开方 3 ** 2#= ... -
Ruby发送HTTP请求
2015-07-21 18:06 1091Ruby使用HTTP协议发送请求的方法备忘。 好像这 ... -
invalid byte sequence in GBK”问题 invalid byte sequence in UTF-8”问题
2015-07-03 15:11 2736碰见错误: test.rb:8:in `ma ... -
Ruby1.9之字符串内编码和外编码
2015-07-02 17:52 1208这里的文章很不错的么:Rubyist http://ru ... -
DevKit介绍和安装in railsInstaller
2015-05-26 17:01 2572DevKit介绍和安装in railsInstaller ... -
Rails_migrations中使用mysql的bigint
2014-09-30 14:32 935From:http://rubyer.me/blog/468 ... -
Rails外如何启动rails的类自动加载_activates autoloading using ActiveSupport 3.x
2016-06-22 12:08 556The following cod ... -
如何在rails里打开gem里面的类_为何有时候不生效
2014-09-02 21:55 887在rails里面打开某个gem的类,补充一下等等,也 ... -
ruby的加载机制和rails_自动加载机制_对比
2014-09-02 16:51 1496prefer:http://urbanautomat ... -
Rails源码阅读(13)rails中的autoload和ruby的autoload
2014-07-30 17:13 1859Rails源码阅读(13)rails中的autoload和 ... -
Rails中命名路由的区别***_url与***_path
2014-07-29 16:37 1018Rails中命名路由的区别***_url与***_path ... -
ruby_gem安装_切换指定不同的源
2014-07-20 18:09 1097from:http://www.hiceon.com/to ... -
Ruby 的文件操作_不断总结
2014-07-11 11:55 1098一、用文件和目 ... -
Rails源码阅读(12)叫Rails的模块module_Rails常量使用
2014-07-02 09:35 993The module nams "Rail ... -
注册邮件中的链接无host
2014-05-19 14:47 587在注册邮件中用命名路由的xxx_url不起作用,导致注 ... -
每个命令都有bundle exec的麻烦
2014-04-18 17:33 1353问题: 每次都得搞这个东西bundle exec放在 ... -
关于favicon.ico的报错:RoutingError
2014-03-31 14:45 1868错误: ActionController::Routin ... -
rbenv_安装太慢_解决办法
2014-03-31 13:51 2097rvm做了很多“不为人知”的事情,而且做的太 ... -
配置sunspot tomcat结合sunspot_rails
2014-02-26 10:58 801这个sunspot的东西还是有不少缺点的。 ht ... -
RubyOrRails_使用技巧_收集
2013-11-09 14:39 1009#link_to not working in sc ...
相关推荐
Ruby on Rails 是无可非议的Ruby 杀手锏应用程序。它提供很多保障将Ruby 从其日文 本土的隐晦中解脱出来。没有其他任何一门编程语言可以以这样一个简单的Web应用程 序框架而自豪,该框架也吸取了大部分该语言开发者...
Rails中的Migration相对来说更适合做数据库的对象集合操作,而自动化的rake则是一个较好的选择,下面来浅谈Ruby on Rails下的rake与数据库数据迁移操作,需要的朋友可以参考下
适用于 Ruby on Rails 的 Todolist 应用程序 现场演示 要求 吉特 Ruby 导轨 部署 克隆这个存储库: git clone https://github.com/mdluo/todos.git 然后进入目录: cd todos 安装包: bundle install 然后运行...
这个应用程序是一个示例,说明了如何使用带有Conekta API 1.0.0的Ruby on Rails创建SPEI付款并配置端点以接收Webhook通知。 要运行,您需要: git clone git@github....
# 在线考试系统 在服务器上部署后可以由老师管理其考试,并发布给学生...可以使用`rake db:seed`来生成管理员账户,不过在数据库内teachers表内已经有管理员账户时无效。如果真的有这个需求可以更改一下db/seeds.rb
自述文件 该自述文件通常会记录启动和运行应用程序所需的所有步骤。 您可能要讲的内容: Ruby版本 系统依赖 配置 数据库创建 数据库初始化 ... 如果您不打算运行rake doc:app请随意使用其他标记语言。
使用Ruby on Rails的信号量演示CI / CD管道 这是一个示例应用程序和CI / CD管道,显示了如何在Semaphore 2.0上运行Ruby on Rails项目。 本地应用程序设置 Ruby版本在.ruby-version指定。 我们建议使用rbenv。 ...
Ruby on Rails印度尼西亚主页 该存储库是网站上内容的结果:地位一般说明不要忘记捆绑Gemfile资源: $ bundle install要构建源代码: $ jekyll build要查看源代码服务,请执行以下操作: $ jekyll serve您可以在耙上...
Squash 客户端库:Ruby on Rails 此客户端库向 Squash(Squarish 异常报告和管理系统)报告异常。 它与纯 Ruby 和 Ruby on Rails 项目兼容。文档在整个源代码中,综合文档以 YARD 和 Markdown 格式的注释编写。 要将...
这是我的投资组合中的Ruby on Rails 5应用程序。 特征 实时聊天引擎发表评论 博客 文件夹 拖放界面 技术领域 Ruby on Rails Java脚本 引导程序 动作电缆宝石 适用于照片存储的AWS S3 一探究竟 先决条件 Ruby 2.6 ...
框架-Ruby on Rails 托管在Heroku 部署说明 确保您的机器上安装了Rails和Git git将存储库克隆到本地计算机git clone https://github.com/Twinpair/Eventor.git 运行bundle install以安装gem 运行rake db:...
自述 此自述文件通常会记录启动和运行应用程序所需的任何步骤。 您可能想要涵盖的内容: Ruby版 系统依赖 配置 数据库创建 数据库初始化 ... 如果您不打算运行rake doc:app请随意使用不同的标记语言。
Rails项目通过Ruby世界中的gem和rake工具来构建起来真的相当方便,这里就给大家整理了一份Ruby on Rails网站项目构建简单指南,需要的朋友可以参考下
Ruby on Rails 视频转码器 Ruby on Rails 应用程序、视频上传器和转码器。 它使用 ffmpeg 和 Resque 后台作业进行转码过程。 使用: 安装redis 从源代码构建 ffmpeg $ 捆绑安装 $ rake db:migrate(使用sqlite...
Ruby gem通过将ActiveRecord实例的设置作为序列化的Hash存储在单独的数据库表中来处理ActiveRecord实例的设置。 包括命名空间和默认值。 要求 Ruby 2.4或更高版本 Rails 4.2或更高版本(包括Rails 6) 安装 将gem...
Ruby on Rails 的 Fotorama 是一个简单、令人惊叹、功能强大的 JavaScript 库。 这是一个打包器,它允许您在 Rails Assets Pipeline 中通过 RubyGem 简单地安装和维护 Fotorama。 在开发中它将使用本地副本,在...
自述 此自述文件通常会记录启动和运行应用程序所需的任何步骤。 您可能想要涵盖的内容: Ruby版 系统依赖 配置 数据库创建 数据库初始化 ... 如果您不打算运行rake doc:app请随意使用不同的标记语言。
主要介绍了在Docker中部署Ruby on Rails的教程,Docker是当下最火的虚拟机,而本文所介绍的Ruby on Rails的部署则充分利用了Ruby中的rake这一炫酷的实现自动化的方法,需要的朋友可以参考下
果汁冰糕 一组使与Ruby on Rails无缝配合的工具。 该gem添加了一些Rake任务,以为Rails生成的动态方法生成Ruby接口(RBI)文件。 它还包括相关Rails类的签名。 RBI文件已添加到sorbet/rails-rbi/文件夹中。 sorbet-...
请参阅标题为安装将宝石添加到您的Gemfile gem "plutus" 生成迁移文件rake plutus:install:migrations 运行迁移rake db:migrate概述plutus插件提供了一个完整的双重记帐系统,可在任何Ruby on Rails应用程序中使用。...