Take your query out of quotes -- a query has to be a DAL Query object, but
you have simply passed in a string.
Anthony
On Friday, February 3, 2012 3:31:23 PM UTC-5, Omi Chiba wrote:
>
> I want to export the specific table data to csv. I tried the code
> after appadmin but I got a "TypeError: 'str' object is not callable"
> error. Can you guys help ?
>
> I also want to export the csv file with " " for characters.
>
>
> Model
> ----------------------
> db.define_table('IQWAGFTY',
> Field('TYPRCD', length=15),
> Field('TYPRKJ', length=50),
> Field('TYTYPE', length=2),
> primarykey=['TYPRCD'])
>
>
> Controller
> --------------------------
> def export_csv():
> import gluon.contenttype
> response.headers['Content-Type'] = \
> gluon.contenttype.contenttype('.csv')
> db = request.args[0]
> query = 'db.IQWAGFTY.TYPRCD!=""'
> response.headers['Content-disposition'] = 'attachment;
> filename=IQWAGFTY.csv'
> return str(db(query,ignore_common_filters=True).select())
>
> def index():
> if request.vars.csvfile != None:
> import_csv(db[request.vars.table],request.vars.csvfile.file)
> response.flash = T('data uploaded')
> return dict()
>
> View - default/index
> ------------------------------
> {{left_sidebar_enabled=right_sidebar_enabled=False}}
> {{extend 'layout.html'}}
>
> <h3>Step 1. Download file</h3>
> [ <a href="{{=URL('export_csv',args='db.IQWAGFTY')}}">{{="export as
> csv file"}}</a> ]
>
> Traceback
> ------------------------------
> Traceback (most recent call last):
> File "C:\web2py\gluon\restricted.py", line 204, in restricted
> exec ccode in environment
> File "C:/web2py/applications/Inventory_Reserve_Admin/controllers/
> default.py", line 82, in <module>
> File "C:\web2py\gluon\globals.py", line 172, in <lambda>
> self._caller = lambda f: f()
> File "C:/web2py/applications/Inventory_Reserve_Admin/controllers/
> default.py", line 22, in export_csv
> return str(db(query,ignore_common_filters=True).select())
> TypeError: 'str' object is not callable
>