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 我只说一句。谷歌搜索是必需品。没有访问谷歌能力的人,没法好好学习和工作。
#2 楼 @douxiance 内容很好,然而回帖没什么用啊,除了增加水量以外。 优秀的帖子留在论坛里通过搜索引擎就可以找到了,不停顶贴没意义。
手动点个赞。 (有没有打算把 RSpec 也加入?
IPS 屏基本都能竖着。当然像素点排列这是没办法的事情,不能多纠结了。 自用 Acer B6 B296CL 竖过来看没什么问题(当然不会竖着用就是了
#41 楼 @killernova 嗯,应该是 04-06K
没实际环境不好说。通过以下的方式去调试吧:
final_amount.class
final_amount.to_f
params[:order]['final_amount']
的值,使他和final_amount
不一样。