#12 楼 @franky_xhl 一定要的 ^^
看了你的 deploy.rb,我大概明白关键一点是你用了不同的 env 变量来区分 production 和 stage,我下面的例子是 stage / production 都用 'production' 作为 env 变量值。 至于说具体的配置,比如 database.yml 不同,可以在 after deploy:finalize_update 或者 deploy:create_symlink 这个步骤解决。
task :stage do
set :user, "tester"
set :target, "stage"
server "stage.example.com", :app, :web, :db, :primary => true
end
task :production do
set :user, "deployer"
set :use_sudo, false
set :target, "www"
server "www.example.com", :app, :web, :db, :primary => true
end
set :rails_env, "production"
set :deploy_via, :copy
set :deploy_to, "/deploy/path"
@xdite 我们也把 database.yml 放在 git 里面,对新手很有帮助(正如 issue 里面有人提到一样)。Deploy 的时候会有另外一个 database.yml 覆盖掉这个,所以也不会发生信息泄密问题 ^^
@lgn21st 同求一枚邀请码
自己找一些有价值的问题主动提出来,就可以少很多没有价值的问题咯
赞啊。不过,这么大的文件直接 host 啊 @@
@camel 很抱歉,我家里突然有事情,周二去不了啦,连 RubyConf 都去不了啦 :(
好,下周见
#1 楼 @fresh_fish 是的,还写了一个 notification_spec.rb 都没有执行。。。其实,一跑测试都就会报一堆错误
报名
#3 楼 @knwang 我觉得这个 Tutorial 很好,让我知道了 RSpec / Capybara,还有 SASS 这些很潮的东东的一些基本用法,了解到了 has_many ( :through ) / belongs_to 这些用法。当然,初学者不可能完全搞清楚背后怎么实现的,只是依葫芦画瓢,不过,我可以开始画了。
这个 Tutorial 的代码质量我觉得挺高,非常简洁,应该是经过反复推敲提炼的,我希望自己的 Ruby 也能够达到这种水平。作者也很热情,有问题写 Email 过去都能很快回复,开心 ^^ 最后,我觉得可能看一遍 Tutorial 不够,需要达到的境界是抛开 Tutorial 你也基本能做一个微博应用了。
祝大家都玩得开心
可以考虑 google hangout 直播? 要是能在魔都办就好了
啊,学到了那个 CMD+P,然后还能用 @ 来定位 symbol 的方法,很强大
作为一名 Rails 入门者,我想说的是 Michael Hartl 的 Tutorial 不光是第四章,是全部推荐哟 Rspec / capybara / scss 都有用到
#6 楼 @artone 伪造很难,Rails 自带了 CSRF 保护机制,可以看 jquery_ujs.js 里面有这样的代码
handleMethod: function(link) {
var href = rails.href(link),
method = link.data('method'),
target = link.attr('target'),
csrf_token = $('meta[name=csrf-token]').attr('content'),
csrf_param = $('meta[name=csrf-param]').attr('content'),
form = $('<form method="post" action="' + href + '"></form>'),
metadata_input = '<input name="_method" value="' + method + '" type="hidden" />';
if (csrf_param !== undefined && csrf_token !== undefined) {
metadata_input += '<input name="' + csrf_param + '" value="' + csrf_token + '" type="hidden" />';
}
if (target) { form.attr('target', target); }
form.hide().append(metadata_input).appendTo('body');
form.submit();
},
除非伪造的人能够得到这个 csrf-token
#20 楼 @franky_xhl 神马时候介绍的?表示完全没有听到 -.-
brew link 很少用到,按照文档的说法一般会在 brew install 的时候自动调用
另外,我用 RVM 安装 ruby 从来没有加过任何参数的说
话说这些都是从 Perl 继承过来的吧
我最熟悉的是 $0,因为经常
if $0 == __FILE__
报个名