From 9532a32c2a263511459c30494fbaa6564547a044 Mon Sep 17 00:00:00 2001 From: Mohamed Feddad Date: Fri, 4 Apr 2025 13:44:37 +0400 Subject: [PATCH] fix: execute scopes before count Resolves #7407 --- finisher_api.go | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/finisher_api.go b/finisher_api.go index 6802945c..65a0efc1 100644 --- a/finisher_api.go +++ b/finisher_api.go @@ -457,6 +457,10 @@ func (db *DB) Count(count *int64) (tx *DB) { defer delete(tx.Statement.Clauses, "SELECT") } + if len(tx.Statement.scopes) > 0 { + tx.Statement.executeScopes() + } + if len(tx.Statement.Selects) == 0 { tx.Statement.AddClause(clause.Select{Expression: clause.Expr{SQL: "count(*)"}}) } else if !strings.HasPrefix(strings.TrimSpace(strings.ToLower(tx.Statement.Selects[0])), "count(") {