func getFields() {
	t := reflect.TypeOf(model.Post{})
	fmt.Printf("%v\n", t.Name())
	for i := 0; i < t.NumField(); i++ {
		field := t.Field(i)
		fmt.Printf("%v\n", field.Name)
	}
}

func getInterfaces(file *ast.File) *ast.Field {
	for _, d := range file.Decls {
		if d, ok := d.(*ast.GenDecl); ok && d.Tok == token.TYPE {
			for _, s := range d.Specs {
				s, _ := s.(*ast.TypeSpec)
				println(s.Name.String())
			}
		}
	}
	return nil
}