このコミットが含まれているのは:
@@ -13,6 +13,7 @@ class CountsDefaults
|
||||
'rows' => '', 'cols' => '', 'conditions' => '', 'tags' => '' } }
|
||||
details = detail_params(resource)
|
||||
if details
|
||||
details = details.merge('sort' => 'resource_id:asc version_no:asc')
|
||||
language = Locale.find_by(code: locale)&.language_code || locale
|
||||
name = CountsResourceDefinition.name_key(language)
|
||||
aliases = CountsResourceDefinition.aliases_key(language)
|
||||
@@ -72,7 +73,7 @@ class CountsDefaults
|
||||
entry[:definition] == params.fetch('definition', 'latest') &&
|
||||
entry[:mode] == params.fetch('mode', 'summary')
|
||||
end&.fetch(:params) || {}
|
||||
if settings.key?('sort') && params.key?('rows')
|
||||
if settings.key?('sort') && params.key?('rows') && params.fetch('mode', 'summary') == 'summary'
|
||||
actual = QueryState.axes(params['rows'])
|
||||
expected = QueryState.axes(settings.fetch('rows'))
|
||||
compatible = actual.is_a?(Array) && actual.first.is_a?(Hash) &&
|
||||
|
||||
@@ -21,7 +21,7 @@ class CountsTableQuery
|
||||
@connection = @definition.model.connection
|
||||
@axes = CountsAxes.new(population)
|
||||
@page = Integer(params.fetch('page', '1'), 10)
|
||||
@limit = Integer(params.fetch('limit', '20'), 10)
|
||||
@limit = Integer(params.fetch('limit', '100'), 10)
|
||||
@mode = params.fetch('mode', 'summary')
|
||||
raise ArgumentError unless page.between?(1, 1_000_000) && limit.between?(1, 100)
|
||||
raise ArgumentError unless ['summary', 'details'].include?(mode)
|
||||
@@ -178,7 +178,7 @@ class CountsTableQuery
|
||||
query = population.scope.select(Arel.sql(
|
||||
"(#{ population.latest_sql }) AS counts_latest"))
|
||||
order = sort_sql { detail_expression(_1) }
|
||||
query = query.order(Arel.sql((order + ['v.id DESC']).join(', ')))
|
||||
query = query.order(Arel.sql((order + ['v.id ASC']).join(', ')))
|
||||
.limit(limit).offset((page - 1) * limit)
|
||||
rows = query.to_a
|
||||
if ['posts', 'tags'].include?(@definition.resource)
|
||||
|
||||
新しいイシューから参照
ユーザーをブロックする