用rails-erd生成rails项目的实体关系图
2012.01.12有时候我们需要形象的展示实体间的关系(Entity-Relationship Diagrams)
rails-erd 这个gem 可以帮我们实现:
首先安装Graphviz
% brew install cairo pango graphviz # Homebrew on Mac OS X
% sudo port install graphviz # Macports on Mac OS X
% sudo aptitude install graphviz # Debian and Ubuntu
然后在开发环境中使用
group :development do gem "rails-erd" end安装
% bundle install
生成PDF
% rake erd
然后在项目根目录下就会生成ERD.pdf
nohup命令详解
2012.01.12使用nohup让程序永远后台运行
Unix/Linux下一般比如想让某个程序在后台运行,很多都是使用 & 在程序结尾来让程序自动运行。比如我们要运行mysql在后台:
但是加入我们很多程序并不象mysqld一样做成守护进程,可能我们的程序只是普通程序而已,一般这种程序使用 & 结尾,但是如果终端关闭,那么程序也会被关闭。但是为了能够后台运行,那么我们就可以使用nohup这个命令,比如我们有个test.php需要在后台运行,并且希望在后台能够定期运行,那么就使用nohup:
提示:
[~]$ appending output to nohup.out
嗯,证明运行成功,同时把程序运行的输出信息放到当前目录的 nohup.out 文件中去。
附:nohup命令参考
nohup 命令
用途:不挂断地运行命令。
语法:nohup Command [ Arg ... ] [ & ]
描述:nohup 命令运行由 Command 参数和任何相关的 Arg 参数指定的命令,忽略所有挂断(SIGHUP)信号。在注销后使用 nohup 命令运行后台中的程序。要运行后台中的 nohup 命令,添加 & ( 表示“and”的符号)到命令的尾部。
无论是否将 nohup 命令的输出重定向到终端,输出都将附加到当前目录的 nohup.out 文件中。如果当前目录的 nohup.out 文件不可写,输出重定向到 $HOME/nohup.out 文件中。如果没有文件能创建或打开以用于追加,那么 Command 参数指定的命令不可调用。如果标准错误是一个终端,那么把指定的命令写给标准错误的所有输出作为标准输出重定向到相同的文件描述符。
退出状态:该命令返回下列出口值:
126 可以查找但不能调用 Command 参数指定的命令。
127 nohup 命令发生错误或不能查找由 Command 参数指定的命令。
否则,nohup 命令的退出状态是 Command 参数指定命令的退出状态。
nohup命令及其输出文件
nohup命令:如果你正在运行一个进程,而且你觉得在退出帐户时该进程还不会结束,那么可以使用nohup命令。该命令可以在你退出帐户/关闭终端之后继续运行相应的进程。nohup就是不挂起的意思( n ohang up)。
该命令的一般形式为:nohup command &
使用nohup命令提交作业
如果使用nohup命令提交作业,那么在缺省情况下该作业的所有输出都被重定向到一个名为nohup.out的文件中,除非另外指定了输出文件:
在上面的例子中,输出被重定向到myout.file文件中。
使用 jobs 查看任务。
使用 fg %n 关闭。
另外有两个常用的ftp工具ncftpget和ncftpput,可以实现后台的ftp上传和下载,这样我就可以利用这些命令在后台上传和下载文件了。
Rails去除Html标签
2012.01.09ModuleActionView::Helpers::SanitizeHelper
Strips all HTML tags from the html, including comments. This uses the html-scanner tokenizer and so its HTML parsing ability is limited by that of html-scanner.
Examples
strip_tags("Strip <i>these</i> tags!") # => Strip these tags! strip_tags("<b>Bold</b> no more! <a href='more.html'>See more here</a>...") # => Bold no more! See more here... strip_tags("<div id='top-bar'>Welcome to my website!</div>") # => Welcome to my website!
Source: hide
我们真正害怕的是什么(转载)
2012.01.06本文是从 What We’re Really Afraid Of 这篇文章翻译而来。
我最近和一位朋友进行了一次有趣的谈话,他最近做了一个网站卖他的产品,让我吃惊的是,原来我们害怕的事情并不是我们想象的那些。
对话大概是这样的:
B.: 我需要你的帮助。我几个月前做了个网站卖产品,但没有卖出一个。
我: 网站有访问量吗?
B.: 不多,一个月只有100多个人访问。
我: 那你需要更多的访问量。你至少需要100倍这样的访问量才能卖出产品。
B.: 我怎么能吸引到这么多的人?
我: 这不是短期的事,你需要找到谁喜欢你的产品,或要买类似产品的人,告诉他们你的产品。从你认识的人开始,让他们帮你宣传出去。
B.: 我本打算给我的通讯录里的人群发邮件,告诉他们这个网站,但我担心他们访问了网站后什么都不愿意买。
我: 但这样至少你知道了有些方面需要修改和改进。这种情况中,你最好联系他们,问问为什么他们不买,他们希望你哪方面需要改进。
B.: 哦…。
短暂的沉默…
B.: 老天!我突然发现,我并不是担心我的想法不能成功,我害怕的是人们会认为我的创意不够好。我不害怕失败,我害怕的是被拒绝。
这是我见过的最快的商业领悟,他也让我反省我自己的畏惧。
也许我们通常所认为的对失败的害怕,其实是对被拒绝的害怕。这是一个更直觉更具体的恐惧。也许正是这道坎,让如此多的人不敢坚持他们的想法:成为旁观者,看别人的脸色,被人们遗忘。
另一方面,不坚持自己的想法,这对于那些从来没有坚持过的大众是很自然的事,这样会让人停留在自己安逸的环境里,没有任何危险。
失败不好玩。被拒绝也一样。
所以,你如何面对它们?
我坚持和我的创意或产品保持一定的距离。我喜欢我所做的事,但我不等同于它们。事实是,它们的成功或失败并不会导致我的成功或失败,它只是意味着我要不断的改进它,或去尝试别的东西。
就是这样。你*真正*害怕的是什么?