Ruby 里大量的引用类型。然而你是在替换引用本身,而不是替换引用的值,所以和是否引用类型已经没有关系了。
只修改值可以用get_strv.replace('oo')
。
order: Arel.sql("topics.id")
上面链接里写的。我没试过。
因为 Ruby 里很少需要用到++?一般都交给循环来做了。
可以。你甚至可以 str[4..-4]
。
公司以前 Jira 现在 Gitlab board,自己用的 Phabricator。
Block 难道不是 Ruby 的精华之一么……
必须 push -f。
如果其他人 fetch 了,那应该是把他们还未 push 的提交 rebase 到 origin/feature 上。
具体是否实施 force push 还要看团队成员对 git 的掌握程度。如果对完全操控 git 库没有信心,那还是尽量少 force 比较好。
chmod +x
如果你说的是 Windows 的话,是的需要用 bat 或者 cmd 写一个引导文件。
头上加 shebang,权限开执行,放进 PATH 目录里,就可以跑了。这和所有的脚本语言是一样的。
突然暴露年龄系列(好像我也暴露了
嗯。
这台机器只拿来跑这一个东西,somebody 或者 nobody 其实没太大区别。而且 unicorn 配置文件里我其实给 worker 切了用户了,并不是用 root 全程跑的。
我自己项目是用 systemd+unicorn。
[Unit]
Description=XXX unicorn server
[Service]
Type=simple
SyslogIdentifier=xxx
WorkingDirectory=/var/www/xxx/
Environment=RAILS_ENV=production
Environment=WEB_CONCURRENCY=1
ExecStart=/usr/local/bin/bundle exec /usr/local/bin/unicorn -c config/unicorn.rb
[Install]
WantedBy=multi-user.target
(不要吐槽为什么用 Unicorn……因为是个有点年头的项目了)
没记错的话 Windows 下创建符号链接默认需要管理员权限。你可以用管理员权限打开命令行然后再试试看。
fn = appendX()
fn('oo')
这代码怎么看怎么不对啊?
有时候可以在干湿之间寻找一个平衡点。一次编写到处复制不可行,一次编写到处使用不现实,可以想办法少复制几份,比如对于小部分共享某个更改的函数,单独复制一份修改,然后在这个模块内部 DRY。
欧美带宽和中国大陆、香港的带宽价格不在一个位面上。
以前曾经有一段时间根本打不开 Ruby China,完全打不开,必须要开代理才行。现在至少能秒开了,不容易……
等你访问量上去以后,你会发现……
1m 带宽才是最大的瓶颈。
100QPS 动态页面通常需要远远不止 1m 的带宽。
Rails 是常驻内存的网站程序,你多个域名分别对应不同的数据库,可能会造成大量内部的全局变量互相干扰,比如从一个数据库读出来的数据没有清理干净,然后被另一个域名调用走了。
如果你是架构大佬,对于这种场景能够做到非常详细的测试,那当然 OK。否则迟早有一天你会被其他开发人员打死……
因为 inspect 返回 10 条记录吧,所以多读一条。不过的确是做个什么常量比较好。
看看你的 Gemfile?
哇这广告,太硬了。
所以你要找的不是 Ordered Hash 而是 Sorted Hash 吧……
因为你说了 SPA 呀。表单提交是表单提交,SPA 是 SPA……
所以我才推荐你用 Ubuntu 12.04。
我司的产品就是基于 Ruby 1.8.7 + Rails 1.2.5 的,跑在 Ubuntu 12.04 上。
不推荐用跨越了那么多年的发行版……
Ubuntu 12.04 + Apache + Passenger
然而也没人逼你用 Generator 啊。自己复制一份老的 Migration 改改名字改改内容何以用得到黑乎乎?
=== has absolutely nothing whatsoever to do with equality. In particular, it violates pretty much every law that you would ecpect an equality operator to follow. And it does that very much by design. – Jörg W Mittag Dec 17 '10 at 5:08 [1]
(1..5) === 3 # => true
(1..5) === 6 # => false
Integer === 42 # => true
Integer === 'fourtytwo' # => false
/ell/ === 'Hello' # => true
/ell/ === 'Foobar' # => false
除了上面说的 User === User.first
以外,还有 User.first.is_a? User
可以用。这里当然也可以 User.first.class == User
。
=== 不是判断相等的运算符。
[1]: https://stackoverflow.com/questions/4467538/what-does-the-operator-do-in-ruby
找你们负责人谈谈。负责人说什么,就听他的。