@@ -53,7 +53,7 @@ def load_book(self, **keywords):
53
53
:returns: A instance of :class:`Book`
54
54
"""
55
55
raise NotImplementedError ("Please implement this function" )
56
-
56
+
57
57
def get_sheet (self , sheet_name = None , ** keywords ):
58
58
"""
59
59
Get a :class:`Sheet` instance from the file
@@ -116,14 +116,20 @@ def get_records(self, sheet_name=None, name_columns_by_row=0, **keywords):
116
116
else :
117
117
return None
118
118
119
- def save_to_database (self , session = None , table = None ,
120
- sheet_name = None , name_columns_by_row = 0 , name_rows_by_column = - 1 , ** keywords ):
121
- sheet = self .load_single_sheet (sheet_name = sheet_name ,
122
- name_columns_by_row = name_columns_by_row ,
123
- name_rows_by_column = name_rows_by_column ,
124
- ** keywords )
119
+ def save_to_database (
120
+ self ,
121
+ session = None , table = None ,
122
+ sheet_name = None , name_columns_by_row = 0 , name_rows_by_column = - 1 ,
123
+ field_name = None ,
124
+ ** keywords ):
125
+ sheet = self .load_single_sheet (
126
+ field_name = field_name ,
127
+ sheet_name = sheet_name ,
128
+ name_columns_by_row = name_columns_by_row ,
129
+ name_rows_by_column = name_rows_by_column ,
130
+ ** keywords )
125
131
if sheet :
126
- sheet .save_to_database (session , table )
132
+ sheet .save_to_database (session , table , ** keywords )
127
133
128
134
def get_book (self , ** keywords ):
129
135
"""Get a instance of :class:`Book` from the file
@@ -147,10 +153,10 @@ def get_book_dict(self, **keywords):
147
153
else :
148
154
return None
149
155
150
- def save_book_to_database (self , session = None , tables = None , ** keywords ):
151
- book = self .load_book (** keywords )
156
+ def save_book_to_database (self , session = None , tables = None , field_name = None , ** keywords ):
157
+ book = self .load_book (field_name = field_name , ** keywords )
152
158
if book :
153
- book .save_to_database (session , tables )
159
+ book .save_to_database (session , tables , ** keywords )
154
160
155
161
156
162
def dummy_func (content , content_type = None , status = 200 ):
@@ -177,7 +183,7 @@ def make_response(pyexcel_instance, file_type, status=200, **keywords):
177
183
178
184
:param status: unless a different status is to be returned.
179
185
"""
180
- io = pe ._get_io (file_type )
186
+ io = pe .get_io (file_type )
181
187
pyexcel_instance .save_to_memory (file_type , io , ** keywords )
182
188
io .seek (0 )
183
189
return ExcelResponse (io .read (), content_type = FILE_TYPE_MIME_TABLE [file_type ], status = status )
@@ -199,6 +205,11 @@ def make_response_from_book_dict(adict, file_type, status=200, **keywords):
199
205
return make_response (pe .Book (adict ), file_type , status , ** keywords )
200
206
201
207
208
+ def make_response_from_query_sets (query_sets , column_names , file_type , status = 200 , ** keywords ):
209
+ sheet = pe .get_sheet (query_sets = query_sets , column_names = column_names )
210
+ return make_response (sheet , file_type , status , ** keywords )
211
+
212
+
202
213
def make_response_from_a_table (session , table , file_type , status = 200 , ** keywords ):
203
214
sheet = pe .get_sheet (session = session , table = table , ** keywords )
204
215
return make_response (sheet , file_type , status , ** keywords )
0 commit comments