我们有应用是 thin + ruby2 + rails 4 没遇到问题
不用重启,在 ubuntu 里面直接运行 gparted 就可以
有些库比如 bootstrap 既有 js 又有 css 还有 image,手动加进来的话,还要按 rails 的约定重新整理一遍。 不过我现在喜欢用 yeoman 来做这些前端的事情,rails 只管数据接口
画得真好!
抢个楼~
可能是内存不够,我之前 512M 内存跑 rails+mysql+wordpress,mysql 也是经常被系统杀掉
+1
推荐楼主一本书——《黑客与画家》 重要的是找到自己喜欢的东西,无论 ruby 是“如日中天”还是“日薄西山”,只要他能让你迅速(并且快乐!——这点是 ruby 特有的)地实现自己的 idea 就行。其实 ruby 就是很酷,我觉得适合你
创作如绘画,在能表达主题的基础之上,还讲究一笔就勾出神韵,画面减无可减,当中没有任何多余的东西。简洁,而不简陋。
代码的简洁,是在不影响阅读的基础上,用最简单直接的方式实现,每一句话,每一个字符都是必须的(这个角度看,ruby 中不应该用括号)。《代码整洁之道》和《编写可读代码的艺术》关于这方面都有很系统的总结。
这段代码真的很简洁,变量的取名也不错,应该优化了好几个版本吧!大家读下来都知道作用是什么,而且能一口气读完。
除了简洁之外,美的代码还会注意排版的美观,很在意对齐,我觉得这段代码还可以更美的。
忍不住用我的理解的方式改了一下:
class SortedArray < Array
def initialize( *args, &sort_by )
@sort_by = sort_by || Proc.new { |x,y| x <=> y }
super *args
sort_self!
end
def insert( i, v )
next_neighbour = find { |x| @sort_by.call(x,v) > 0 }
insert_before = index( next_neighbour ) || -1
super insert_before, v
end
def <<( v )
insert 0, v
end
alias push <<
alias unshift <<
# 其实加入concat这样的入口非常方便,在这个数组里面添加就是了
methods_to_wrap = %w[
collect!
flatten!
[]=
concat
]
methods_to_wrap.each do |method|
# 这里我尝试用 define_method 代替 class_eval
# 这样阅读代码的时候,能有更好的语法高亮。
# 但是 define_method 不支持 *args 这样的动态
# 参数,只好放弃了。保持 class_eval
class_eval %{
def #{method}(*args)
super
sort_self!
end
}
end
private
# 加入这个private method 是为了DRY,很多地方都用到了
def sort_self!
sort! &@sort_by
end
end
至于性能优化,是另外的话题,至少 insert 方法有优化空间
:)
重新bundle之后出现这个错误
应该说重新bundle时出现这个错误
bundle install 并没有成功
我在我电脑上测试的结果:
➜ ~ gem install mysql -v 2.9.1
Fetching: mysql-2.9.1.gem (100%)
Building native extensions. This could take a while...
Successfully installed mysql-2.9.1
Installing ri documentation for mysql-2.9.1
1 gem installed
证明 mysql 2.9.1 这个 gem 是存在的,但是你的电脑报错说找不到这个 gem 猜测应该是你的 gem 环境出问题了
多玩多折腾,找到自己的兴趣 如果说人生就像一棵树,每一个枝干都是一个技能,大学不需要把一条枝干弄得很粗壮,而是多发展一些枝干,因为每一条枝干都对树有帮助的。毕业后工作了,再选中一条枝干深度发展。
阿里巴巴当前的 ruby 岗位是和其他工作结合在一起的,比如前端开发工程师、iOS 开发工程师、测试工程师,我们部门有专职做 ruby 开发的,但是 title 是前端开发工程师。 校招一般不招产品经理,毕竟产品经理的经验要求很高。不过如果你有信心,可以发个简历,合适的话帮你推荐一下。 要求可以在 这里 找到
说下我的观点哈~
完整的话是这样的
respond_to do |format|
format.json do
render({ json: @person })
end
end
这样下去会不会说咱们是 copy 的他们的?还好 ruby 出来比 go 要早
看书的孩纸都是好孩纸,加油!
根据规范,301/302 redirect 响应需要指定完整的地址(虽然浏览器都支持 path)
所以 redirect_to
一般都用 url
1 楼 -1
明显楼主是要保留 nested resources 的嘛 /shops/1/products/122
用 namespace 就变成了 shop/products/122
其实楼主的问题我也想知道答案。。
默默喜欢:D
chown 只是修改已经上传的图片,新上传的还是按原来的方式。你的 app 进程是以 root 运行的吧?
#2 楼 @meeasyhappy 这是被你抽象过的需求,原始需求是什么呢?也许换种抽象方式就解决了 inherited 不是 new 的时候才触发,定义继承的时候就触发了 你可以试试用 concern,让 A、B、C 都 extend 一个 concern class,不过不知道你的真实需求,只是猜测了
那不用关心是哪个类,只需要知道"某个特征"就好了,duck typing