Fix /admin/tags/:id crashing since Rails 6.1 update (#15953)
Raw SQL passed to `pluck` now has to be explicitly marked as SQL via Arel.sql, see https://github.com/rails/rails/pull/27947
This commit is contained in:
		
							parent
							
								
									59f94593d0
								
							
						
					
					
						commit
						a650a1157d
					
				
					 2 changed files with 14 additions and 2 deletions
				
			
		| 
						 | 
				
			
			@ -59,8 +59,8 @@ module Admin
 | 
			
		|||
                             .where(Status.arel_table[:id].gteq(Mastodon::Snowflake.id_at(Time.now.utc.beginning_of_day)))
 | 
			
		||||
                             .joins(:account)
 | 
			
		||||
                             .group('accounts.domain')
 | 
			
		||||
                             .reorder('statuses_count desc')
 | 
			
		||||
                             .pluck('accounts.domain, count(*) AS statuses_count')
 | 
			
		||||
                             .reorder(statuses_count: :desc)
 | 
			
		||||
                             .pluck(Arel.sql('accounts.domain, count(*) AS statuses_count'))
 | 
			
		||||
    end
 | 
			
		||||
 | 
			
		||||
    def set_counters
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
| 
						 | 
				
			
			@ -20,4 +20,16 @@ RSpec.describe Admin::TagsController, type: :controller do
 | 
			
		|||
      expect(response).to have_http_status(200)
 | 
			
		||||
    end
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  describe 'GET #show' do
 | 
			
		||||
    let!(:tag) { Fabricate(:tag) }
 | 
			
		||||
 | 
			
		||||
    before do
 | 
			
		||||
      get :show, params: { id: tag.id }
 | 
			
		||||
    end
 | 
			
		||||
 | 
			
		||||
    it 'returns status 200' do
 | 
			
		||||
      expect(response).to have_http_status(200)
 | 
			
		||||
    end
 | 
			
		||||
  end
 | 
			
		||||
end
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in a new issue