说不定你交的金比别人多呢。 税是统一计算的,大家都一样,那么不一样的就是医保公积金这些了。 你到手少,说明你交的多,说明公司帮你交的也多……
很久以前看过。 简单说就是,Java 团队里就算有一大群傻逼也不会影响整体质量,但是 Rails 就不同了。 Java 是个非常死板的语言。(Python 从某种程度上来说也很死板,所以应用广泛) Rails 则非常灵活,同样一个功能可以有好几种不同的做法,而且各有利弊。如果你有能力去掌控这些技术,就可以极大地提升开发效率,也能让系统非常稳定(通过靠谱的测试、行为驱动开发过程来保证)。然而如果没有能力(或者遇上团队里有坑子),就……
当然,Rails 不需要这么大的团队也是一个问题。 一个网站,让 Java 团队来做,几十个人做几个月。让 Rails 团队来做,十几个人做几星期……
如果你对 Ruby 的兴趣更大,为什么不把本职工作换掉呢?Ruby 开发的收入也不低吧。
lam = -> { xxx }
go_to :payment, if: lam
#7 楼 @novtopro http://apidock.com/rails/ActiveRecord/Scoping/Named/ClassMethods/all
Returns an ActiveRecord::Relation scope object.
#44 楼 @trenttian finnally 读起来感觉像法语
难道不就应该用 Api::ApplicationController 解决吗?
另外其实建议最好不要给类起一样的名字,否则就会出现你这样的命名冲突的情况。
命名冲突的时候要强制命名路径,比如要严格区分 ::AppCtrler
和 ::Api::AppCtrler
而不能就只写一个 AppCtrler
。
建议类改名成,比如说, ApiController
。
:doge: 非提的欧洲移民之路啊。
URL 请好好编码。
+
->
%2B
-> +
get %r{/background(|/user/write)/?\Z} do
没用过 Sinatra,纯猜测。
def all_combi_origin str
combi = ['']
# Split into upper and lower cases
chars = str.each_char.map { |c| c =~ /[[:alpha:]]/ ? [c.upcase, c.downcase] : [c]}
# Combine them
chars.each do |chs|
combi = combi.product(chs)
end
combi.map(&:join)
end
这是把你的思路用 Ruby 改写后的代码。
测速
Benchmark.bm(20) do |x|
x.report('all_combi') { 50_000.times { all_combi 'ru123by!' } }
x.report('all_combi_origin') { 50_000.times { all_combi_origin 'ru123by!' } }
x.report('all_combi_4楼') { 50_000.times { all_combi_4楼 'ru123by!' } }
end
# user system total real
#all_combi 1.540000 0.000000 1.540000 ( 1.587790)
#all_combi_origin 2.780000 0.010000 2.790000 ( 2.894336)
#all_combi_4楼 1.400000 0.000000 1.400000 ( 1.443631)
写 Ruby 就要用 Ruby 的思路去设计算法。 比如你这里
for i in 1...s.length
q=q.product(t[i])
end
就至少应该写成
(1..s.size).each do |i|
或者是
t[1..-1].each do |ti|
以及
q.each do |g|
puts g.join
end
应该写成
result = q.map(&:join)
puts result
require 'pp'
def all_combi str
combi = ['']
# Split into upper and lower cases
chars = str.each_char.map { |c| c =~ /[[:alpha:]]/ ? [c.upcase, c.downcase] : [c]}
# Combine them
chars.each do |chs|
combi = combi.flat_map do |s|
chs.map { |ch| s + ch }
end
end
combi
end
combi = all_combi 'ru123by!'
pp combi
puts combi == combi.uniq
随便写了一下,具体效率怎么样就不知道了。
还有一种嘛,每次把请求地址塞进 Session
里。不过请求地址和浏览器 URL 是不一定相关的。
取浏览器显示的 URL 要从浏览器取,用 JavaScript 拿。 Referrer 并不能保证一定是上一次的请求。有些特定情况下 Referrer 甚至会被浏览器屏蔽。
你贴了 4 个一样的地址是什么意思……真看不懂。
#4 楼 @yanguango 这里用来区别
#4 楼 @douxiance 我只说一句。谷歌搜索是必需品。没有访问谷歌能力的人,没法好好学习和工作。