On Jul13, 6:51am, mdipierro <[email protected]> wrote:
> errata
>
> db.define_table('animal',Field('name'))
>
> def index():
>
> form=SQLFORM.factory(Field('name',default=request.vars.name,requires=IS_NOT
> _EMPTY()))
> if form.accepts(request.vars):
> redirect(URL(r=request,f='animals',vars=request.vars))
> return dict(form=form)
>
> def animals():
> query=db.animal.name.like('%'+request.vars.name+'%')
> rows = db(query).select()
> if request.extension=='csv': return str(rows) # as csv
> link
> =A('download',_href=URL(r=request,f='animals.html',vars=request.vars))
> return dict(table=SQLTABLE(rows),link=link)
>
> Hope I got it right this time...
Seeing your code like this:
> if request.extension=='csv': return str(rows) # as csv
makes me feel perhaps we can have a views/generic.csv
which at least contain:
response.headers['Content-Type']='text/csv'
as well as the Content-Disposition, according to [1]
[1] http://stackoverflow.com/questions/393647/response-content-type-as-csv