- update mongo

master v1.0.41
李光春 2 years ago
parent f1530064e9
commit 284e13594a

@ -1,3 +1,3 @@
package dorm package dorm
const Version = "1.0.40" const Version = "1.0.41"

@ -42,18 +42,27 @@ func (c *MongoClient) Model(value interface{}) *MongoCollectionOptions {
var collectionOptions *MongoCollectionOptions var collectionOptions *MongoCollectionOptions
val := reflect.ValueOf(value) 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) databaseOptions = c.Database(databaseName)
} else { } else {
databaseOptions = c.Database(c.configDatabaseName) databaseOptions = c.Database(c.configDatabaseName)
} }
if methodValue := val.MethodByName("CollectionName"); methodValue.IsValid() { methodCollectionNameValue := val.MethodByName("CollectionName")
collectionName := methodValue.Call(nil)[0].String() if methodCollectionNameValue.IsValid() {
collectionName := methodCollectionNameValue.Call(nil)[0].String()
collectionOptions = databaseOptions.Collection(collectionName) collectionOptions = databaseOptions.Collection(collectionName)
} else { } 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 return collectionOptions

@ -33,18 +33,27 @@ func (cs *MongoSessionOptions) Model(value interface{}) *MongoSessionCollectionO
var sessionCollectionOptions *MongoSessionCollectionOptions var sessionCollectionOptions *MongoSessionCollectionOptions
val := reflect.ValueOf(value) 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) sessionDatabaseOptions = cs.Database(databaseName)
} else { } else {
sessionDatabaseOptions = cs.Database(cs.configDatabaseName) sessionDatabaseOptions = cs.Database(cs.configDatabaseName)
} }
if methodValue := val.MethodByName("CollectionName"); methodValue.IsValid() { methodCollectionNameValue := val.MethodByName("CollectionName")
collectionName := methodValue.Call(nil)[0].String() if methodCollectionNameValue.IsValid() {
collectionName := methodCollectionNameValue.Call(nil)[0].String()
sessionCollectionOptions = sessionDatabaseOptions.Collection(collectionName) sessionCollectionOptions = sessionDatabaseOptions.Collection(collectionName)
} else { } 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 return sessionCollectionOptions

Loading…
Cancel
Save