From 9bbf6c352c678faa5be4768ac3867616cff1cde5 Mon Sep 17 00:00:00 2001 From: Arkylin Date: Wed, 10 May 2023 22:23:49 +0800 Subject: [PATCH] modified: models/policy.go modified: models/policy_test.go --- models/policy.go | 1 + models/policy_test.go | 6 ++++++ 2 files changed, 7 insertions(+) diff --git a/models/policy.go b/models/policy.go index f1e0202..c2e045d 100644 --- a/models/policy.go +++ b/models/policy.go @@ -180,6 +180,7 @@ func (policy *Policy) GenerateFileName(uid uint, origin string) string { "{second}": time.Now().Format("05"), "{originname}": origin, "{ext}": filepath.Ext(origin), + "{originname_without_ext}": strings.TrimSuffix(origin, filepath.Ext(origin)), "{uuid}": uuid.Must(uuid.NewV4()).String(), } diff --git a/models/policy_test.go b/models/policy_test.go index c888ada..72c1da9 100644 --- a/models/policy_test.go +++ b/models/policy_test.go @@ -134,6 +134,12 @@ func TestPolicy_GenerateFileName(t *testing.T) { testPolicy.FileNameRule = "123{date}ss{datetime}" asserts.Len(testPolicy.GenerateFileName(1, "123.txt"), 27) + testPolicy.FileNameRule = "{originname_without_ext}" + asserts.Len(testPolicy.GenerateFileName(1, "123.txt"), 3) + + testPolicy.FileNameRule = "{originname_without_ext}_{randomkey8}{ext}" + asserts.Len(testPolicy.GenerateFileName(1, "123.txt"), 16) + // 支持{originname}的策略 testPolicy.Type = "local" testPolicy.FileNameRule = "123{originname}"