From 284e13594a4ce8549de0db8afdb9cbc5efeeecd7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=9D=8E=E5=85=89=E6=98=A5?= Date: Wed, 21 Sep 2022 11:05:42 +0800 Subject: [PATCH] - update mongo --- const.go | 2 +- mongo_database.go | 19 ++++++++++++++----- mongo_session_database.go | 19 ++++++++++++++----- 3 files changed, 29 insertions(+), 11 deletions(-) diff --git a/const.go b/const.go index 8122113..98b051d 100644 --- a/const.go +++ b/const.go @@ -1,3 +1,3 @@ package dorm -const Version = "1.0.40" +const Version = "1.0.41" diff --git a/mongo_database.go b/mongo_database.go index af7d3ee..c285ace 100644 --- a/mongo_database.go +++ b/mongo_database.go @@ -42,18 +42,27 @@ func (c *MongoClient) Model(value interface{}) *MongoCollectionOptions { var collectionOptions *MongoCollectionOptions val := reflect.ValueOf(value) - if methodValue := val.MethodByName("DatabaseName"); methodValue.IsValid() { - databaseName := methodValue.Call(nil)[0].String() + + methodDatabaseNameValue := val.MethodByName("DatabaseName") + if methodDatabaseNameValue.IsValid() { + databaseName := methodDatabaseNameValue.Call(nil)[0].String() databaseOptions = c.Database(databaseName) } else { databaseOptions = c.Database(c.configDatabaseName) } - if methodValue := val.MethodByName("CollectionName"); methodValue.IsValid() { - collectionName := methodValue.Call(nil)[0].String() + methodCollectionNameValue := val.MethodByName("CollectionName") + if methodCollectionNameValue.IsValid() { + collectionName := methodCollectionNameValue.Call(nil)[0].String() collectionOptions = databaseOptions.Collection(collectionName) } else { - panic(NoConfigCollectionName) + methodTableNameValue := val.MethodByName("TableName") + if methodTableNameValue.IsValid() { + collectionName := methodTableNameValue.Call(nil)[0].String() + collectionOptions = databaseOptions.Collection(collectionName) + } else { + panic(NoConfigCollectionName) + } } return collectionOptions diff --git a/mongo_session_database.go b/mongo_session_database.go index d040a1c..ff26f96 100644 --- a/mongo_session_database.go +++ b/mongo_session_database.go @@ -33,18 +33,27 @@ func (cs *MongoSessionOptions) Model(value interface{}) *MongoSessionCollectionO var sessionCollectionOptions *MongoSessionCollectionOptions val := reflect.ValueOf(value) - if methodValue := val.MethodByName("DatabaseName"); methodValue.IsValid() { - databaseName := methodValue.Call(nil)[0].String() + + methodDatabaseNameValue := val.MethodByName("DatabaseName") + if methodDatabaseNameValue.IsValid() { + databaseName := methodDatabaseNameValue.Call(nil)[0].String() sessionDatabaseOptions = cs.Database(databaseName) } else { sessionDatabaseOptions = cs.Database(cs.configDatabaseName) } - if methodValue := val.MethodByName("CollectionName"); methodValue.IsValid() { - collectionName := methodValue.Call(nil)[0].String() + methodCollectionNameValue := val.MethodByName("CollectionName") + if methodCollectionNameValue.IsValid() { + collectionName := methodCollectionNameValue.Call(nil)[0].String() sessionCollectionOptions = sessionDatabaseOptions.Collection(collectionName) } else { - panic(NoConfigCollectionName) + methodTableNameValue := val.MethodByName("TableName") + if methodTableNameValue.IsValid() { + collectionName := methodTableNameValue.Call(nil)[0].String() + sessionCollectionOptions = sessionDatabaseOptions.Collection(collectionName) + } else { + panic(NoConfigCollectionName) + } } return sessionCollectionOptions