From 09ce105eeeabe0e5d412eda06f55aa7365c713cd Mon Sep 17 00:00:00 2001 From: John Date: Sat, 10 Oct 2020 14:00:10 +0800 Subject: [PATCH] improve gdb.Model.Fields/FieldsEx for package gdb --- database/gdb/gdb_model_fields.go | 22 ++++++++++++++-------- 1 file changed, 14 insertions(+), 8 deletions(-) diff --git a/database/gdb/gdb_model_fields.go b/database/gdb/gdb_model_fields.go index 003201577..bccdeb69a 100644 --- a/database/gdb/gdb_model_fields.go +++ b/database/gdb/gdb_model_fields.go @@ -24,18 +24,24 @@ func (m *Model) Filter() *Model { } // Fields sets the operation fields of the model, multiple fields joined using char ','. -func (m *Model) Fields(fields string) *Model { - model := m.getModel() - model.fields = fields - return model +func (m *Model) Fields(fields ...string) *Model { + if len(fields) > 0 { + model := m.getModel() + model.fields = gstr.Join(fields, ",") + return model + } + return m } // FieldsEx sets the excluded operation fields of the model, multiple fields joined using char ','. // Note that this function supports only single table operations. -func (m *Model) FieldsEx(fields string) *Model { - model := m.getModel() - model.fieldsEx = fields - return model +func (m *Model) FieldsEx(fields ...string) *Model { + if len(fields) > 0 { + model := m.getModel() + model.fieldsEx = gstr.Join(fields, ",") + return model + } + return m } // Deprecated, use GetFieldsStr instead.