Add more dummy code for orm.go
This commit is contained in:
		
							parent
							
								
									7f9d486d5a
								
							
						
					
					
						commit
						540345f552
					
				
							
								
								
									
										4
									
								
								main.go
									
									
									
									
									
								
							
							
						
						
									
										4
									
								
								main.go
									
									
									
									
									
								
							| @ -56,9 +56,9 @@ func (s *DB) Order(value interface{}) (orm *Orm) { | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
| func (s *DB) Select(querystring string) (orm *Orm) { | ||||
| func (s *DB) Select(value interface{}) (orm *Orm) { | ||||
| 	orm = s.buildORM() | ||||
| 	orm.Select(querystring) | ||||
| 	orm.Select(value) | ||||
| 	return | ||||
| } | ||||
| 
 | ||||
|  | ||||
							
								
								
									
										76
									
								
								orm.go
									
									
									
									
									
								
							
							
						
						
									
										76
									
								
								orm.go
									
									
									
									
									
								
							| @ -1,17 +1,23 @@ | ||||
| package gorm | ||||
| 
 | ||||
| import "database/sql" | ||||
| import ( | ||||
| 	"errors" | ||||
| 	"strconv" | ||||
| 
 | ||||
| 	"database/sql" | ||||
| ) | ||||
| 
 | ||||
| type Orm struct { | ||||
| 	TableName  string | ||||
| 	PrimaryKey string | ||||
| 	Error      bool | ||||
| 	Error      error | ||||
| 
 | ||||
| 	db          *sql.DB | ||||
| 	whereClause []interface{} | ||||
| 	selectStr   string | ||||
| 	orderStr    string | ||||
| 	offsetInt   int64 | ||||
| 	limitInt    int64 | ||||
| 	offsetInt   int | ||||
| 	limitInt    int | ||||
| } | ||||
| 
 | ||||
| func (s *Orm) Where(querystring interface{}, args ...interface{}) *Orm { | ||||
| @ -19,31 +25,37 @@ func (s *Orm) Where(querystring interface{}, args ...interface{}) *Orm { | ||||
| 	return s | ||||
| } | ||||
| 
 | ||||
| func (s *Orm) First(out interface{}) *Orm { | ||||
| 	return s | ||||
| } | ||||
| 
 | ||||
| func (s *Orm) Find(out interface{}) *Orm { | ||||
| 	return s | ||||
| } | ||||
| 
 | ||||
| func (s *Orm) Limit(value interface{}) *Orm { | ||||
| 	switch value := value.(type) { | ||||
| 	case string: | ||||
| 		s.limitInt, _ = strconv.Atoi(value) | ||||
| 	case int: | ||||
| 		s.limitInt = value | ||||
| 	default: | ||||
| 		s.Error = errors.New("Can' understand the value of Limit, Should be int") | ||||
| 	} | ||||
| 	return s | ||||
| } | ||||
| 
 | ||||
| func (s *Orm) Offset(value interface{}) *Orm { | ||||
| 	switch value := value.(type) { | ||||
| 	case string: | ||||
| 		s.offsetInt, _ = strconv.Atoi(value) | ||||
| 	case int: | ||||
| 		s.offsetInt = value | ||||
| 	default: | ||||
| 		s.Error = errors.New("Can' understand the value of Offset, Should be int") | ||||
| 	} | ||||
| 	return s | ||||
| } | ||||
| 
 | ||||
| func (s *Orm) Order(value interface{}) *Orm { | ||||
| 	return s | ||||
| } | ||||
| 
 | ||||
| func (s *Orm) Or(querystring interface{}, args ...interface{}) *Orm { | ||||
| 	return s | ||||
| } | ||||
| 
 | ||||
| func (s *Orm) Not(querystring interface{}, args ...interface{}) *Orm { | ||||
| 	switch value := value.(type) { | ||||
| 	case string: | ||||
| 		s.orderStr = value | ||||
| 	default: | ||||
| 		s.Error = errors.New("Can' understand the value of Order, Should be string") | ||||
| 	} | ||||
| 	return s | ||||
| } | ||||
| 
 | ||||
| @ -51,7 +63,13 @@ func (s *Orm) Count() int64 { | ||||
| 	return 0 | ||||
| } | ||||
| 
 | ||||
| func (s *Orm) Select(querystring string) *Orm { | ||||
| func (s *Orm) Select(value interface{}) *Orm { | ||||
| 	switch value := value.(type) { | ||||
| 	case string: | ||||
| 		s.selectStr = value | ||||
| 	default: | ||||
| 		s.Error = errors.New("Can' understand the value of Select, Should be string") | ||||
| 	} | ||||
| 	return s | ||||
| } | ||||
| 
 | ||||
| @ -75,6 +93,18 @@ func (s *Orm) Exec(sql string) *Orm { | ||||
| 	return s | ||||
| } | ||||
| 
 | ||||
| func (s *Orm) Explain() string { | ||||
| 	return "" | ||||
| func (s *Orm) First(out interface{}) *Orm { | ||||
| 	return s | ||||
| } | ||||
| 
 | ||||
| func (s *Orm) Find(out interface{}) *Orm { | ||||
| 	return s | ||||
| } | ||||
| 
 | ||||
| func (s *Orm) Or(querystring interface{}, args ...interface{}) *Orm { | ||||
| 	return s | ||||
| } | ||||
| 
 | ||||
| func (s *Orm) Not(querystring interface{}, args ...interface{}) *Orm { | ||||
| 	return s | ||||
| } | ||||
|  | ||||
							
								
								
									
										11
									
								
								orm_test.go
									
									
									
									
									
								
							
							
						
						
									
										11
									
								
								orm_test.go
									
									
									
									
									
								
							| @ -6,12 +6,19 @@ import ( | ||||
| 	"testing" | ||||
| ) | ||||
| 
 | ||||
| type User struct { | ||||
| 	Name string | ||||
| } | ||||
| 
 | ||||
| func TestWhere(t *testing.T) { | ||||
| 	db, err := Open("postgres", "user=gorm dbname=gorm") | ||||
| 
 | ||||
| 	if err != err { | ||||
| 		t.Errorf("Error should be nil") | ||||
| 	} | ||||
| 	orm := db.Where("id = $1", 1).Where("name = $1", "jinzhu") | ||||
| 	fmt.Println(orm.whereClause) | ||||
| 	orm := db.Where("id = $1", 1, 3, 4, []int64{1, 2, 3}).Where("name = $1", "jinzhu") | ||||
| 
 | ||||
| 	user := &User{} | ||||
| 	orm.First(user) | ||||
| 	fmt.Println(user) | ||||
| } | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 Jinzhu
						Jinzhu