小编jay*_*ayp的帖子

将哈希作为参数传递给Rake任务

我有一个佣金任务

task :post_hit, [:host, :title, :description, :model, :num_assignments, :reward, :lifetime, :qualifications, :p, :opts] => :environment do |t, args|
Run Code Online (Sandbox Code Playgroud)

:p 需要是一个哈希,但如果我尝试:

rake turkee:post_hit["http://www.staging.collegesportsbluebook.com","LS Info","Fill In Player First Name","MechanicalTurk",100,0.01,2,{},{id: 5},{}]
Run Code Online (Sandbox Code Playgroud)

它错误地说id:无法解析(空间似乎做了一些事情).

如果我试过:

rake turkee:post_hit["http://www.staging.collegesportsbluebook.com","LS Info","Fill In Player First Name","MechanicalTurk",100,0.01,2,{},{"id: 5"},{}]
Run Code Online (Sandbox Code Playgroud)

who字符串"id: 5"被解释为单个字符串.

我们不允许通过哈希来耙任务吗?

hash rake ruby-on-rails

8
推荐指数
2
解决办法
2741
查看次数

运行Postgres查询按一个字段分组并按另一个字段排序

我有一个PostgreSQL表,其中包含以下相关字段:

url
title
created_at
Run Code Online (Sandbox Code Playgroud)

可以有许多行包含相同的URL但标题不同.以下是一些示例行:

www.nytimes.com | The New York Times         | 2016-01-01 00:00:00`
www.wsj.com     | The Wall Street Journal    | 2016-01-03 15:32:13`
www.nytimes.com | The New York Times Online  | 2016-01-06 07:19:08`
Run Code Online (Sandbox Code Playgroud)

我正在尝试获取列出以下字段的输出:

1)url
2)title对应于该唯一created_at
的全部计数的最高值3)titleurl

因此,上面示例的输出行看起来像这样:

www.nytimes.com | The New York Times Online | 2
www.wsj.com     | The Wall Street Journal   | 1
Run Code Online (Sandbox Code Playgroud)

基于我在类似问题上阅读的众多SO帖子,看起来我获得前两个字段(url和最新title)的最佳选择是使用DISTINCT ON:

select distinct on (url) url, title from headlines order by url, …
Run Code Online (Sandbox Code Playgroud)

sql postgresql aggregate greatest-n-per-group window-functions

1
推荐指数
1
解决办法
77
查看次数