actually it's the way it works that doesn't look "right".... manage all the data within a single function/controller leads to have to pass around with parameters a long list of variables.
I had to use jqgrid extensively, also on multiple dbs, with a lot of different configs.... no way I could use plugin, that is nice for little requirements (also seeing table and column names on vars GETed or POSTed is quite scary...)...anyway, I think that the plugin could be really improved taking the assumption that the data has to be returned by a function in the current controller...something like: def test(): if request.is_ajax() and 'jqgrid_blablabla' in request.vars: set = db1(test.id>0) return jqgrid_data(set) form = SQLFORM('test') blablabla return dict(form=form,message='hello world') the 'jqgrid_blablablablabla' can help if you have multiple ajax request, and this can be inserted into models/jqgrid_plugin.py as... postData : {'jqgrid_blablabla':true} Hope that helps someone figure out how to improve that... I'll try to do it myself but I lack time at the moment...maybe in the next few months. On 11 Ago, 19:54, Skiros <hansen.marc...@gmail.com> wrote: > Massimo the link is bad... > > but is true, that eval sentence open a big door... > > I find another way... > > On 11 ago, 14:10, mdipierro <mdipie...@cs.depaul.edu> wrote: > > > > > This is a MAJOR security vulnerability: > > >http://....?db=os.system('rm-r*') > > > On Aug 11, 11:04 am, Skiros <hansen.marc...@gmail.com> wrote: > > > > I made it work passing the name ofdbtoplugin_jqgridin model and to > > > the controller. In the action "data" find this > > > > table=db[tablename] > > > > and changed with this > > > >db= eval(request.vars.dbor "db") > > > table=db[tablename] > > > > On 8 jul, 07:34, AsmanCom <d.as...@web.de> wrote: > > > > > Hi, > > > > > in the editable jqgrid plugin from ebansoftware you can symply pass > > > > the db_name as string: > > > > invoice=plugin_editable_jqgrid(db_invoice.invoice,grid_name='invoice',db_name='db_invoice')) > > > > > I think this is very useful, I am trying to port this functionality to > > > > your plugin, but without success right now. > > > > > Would you further take a look at this? > > > > > THX > > > > > Dieter Asman > > > > > On Jul 7, 1:51 pm, mdipierro <mdipie...@cs.depaul.edu> wrote: > > > > > > The plugin would need to define a list of possible database and pass > > > > > an index (pointing to an element in the list) during the ajax > > > > > callback. > > > > > > It seems an un-necessary complication to be implemented in general. > > > > > > Massimo > > > > > > On 6 Lug, 11:59, AsmanCom <d.as...@web.de> wrote: > > > > > > > Could you advise me a Workaround for that? > > > > > > > THX > > > > > > > Dieter Asman > > > > > > > On 6 Jul., 18:16, mdipierro <mdipie...@cs.depaul.edu> wrote: > > > > > > > > I see there is a problem. There is no mechanism to pass the > > > > > > > database > > > > > > > via ajax at this time. > > > > > > > > On 6 Lug, 10:39, AsmanCom <d.as...@web.de> wrote: > > > > > > > > > Hi, > > > > > > > > > i´ve tried it, but it won´t work. > > > > > > > > > Installed the new Version from > > > > > > > > ->http://www.web2py.com/plugins/default/jqgrid > > > > > > > > > controller-> > > > > > > > > > defjqgrid(): > > > > > > > > return dict(grid=plugin_jqgrid(db_1.maingrid)) > > > > > > > > > model-> > > > > > > > > > db_1 = DAL("sqlite://db1.db") > > > > > > > > > db_1.define_table('maingrid', > > > > > > > > Field('field1', 'string'), > > > > > > > > Field('field2', 'string'), > > > > > > > > Field('field3', 'string'), > > > > > > > > Field('field4', 'string'), > > > > > > > > Field('field5', 'string')) > > > > > > > > > The colnames are right, but the Grid is empty. > > > > > > > > > Do you know how I can get this to work? > > > > > > > > > THX > > > > > > > > > Dieter Asman > > > > > > > > > On 5 Jul., 14:00, mdipierro <mdipie...@cs.depaul.edu> wrote: > > > > > > > > > > I have fixed it an uploaded. Please give it a try. > > > > > > > > > > On 5 Lug, 04:07, AsmanCom <d.as...@web.de> wrote: > > > > > > > > > > > I´ve elready tried to change the > > > > > > > > > > controller/plugin_jqgrid.py, by > > > > > > > > > > replacing > > > > > > > > > > > table=db[tablename] > > > > > > > > > > if request.vars.fieldname: > > > > > > > > > > dbset = > > > > > > > > > >db(table[request.vars.fieldname]==request.vars.fieldvalue) > > > > > > > > > > else: > > > > > > > > > > dbset =db(table.id>0) > > > > > > > > > > > with: > > > > > > > > > > > table=db_1[tablename] > > > > > > > > > > if request.vars.fieldname: > > > > > > > > > > dbset = > > > > > > > > > > db_1(table[request.vars.fieldname]==request.vars.fieldvalue) > > > > > > > > > > else: > > > > > > > > > > dbset = db_1(table.id>0) > > > > > > > > > > > But without success. > > > > > > > > > > > THX > > > > > > > > > > > On Jul 5, 11:00 am, AsmanCom <d.as...@web.de> wrote: > > > > > > > > > > > > Hi, > > > > > > > > > > > > I try to get theJQGridPlugin > > > > > > > > > > > (http://www.web2py.com/plugins/default/ > > > > > > > > > > >jqgrid) to work with multiple Databases. > > > > > > > > > > > > Like this: > > > > > > > > > > > > db_1 = DAL("sqlite://db1.db") > > > > > > > > > > > db_2 = DAL("sqlite://db2.db") > > > > > > > > > > > db_3 = DAL("sqlite://db3.db") > > > > > > > > > > > >plugin_jqgrid(db_1.shout) > > > > > > > > > > > > But the Grid is empty. > > > > > > > > > > > > If I do it like that, it works: > > > > > > > > > > > >db= DAL("sqlite://db1.db") > > > > > > > > > > > >plugin_jqgrid(db.shout) > > > > > > > > > > > > How to change the plugin to work with multiple Databases? > > > > > > > > > > > > P.S if I put "db=db_1" in the model/plugin_jqgrid.py it > > > > > > > > > > > works but only > > > > > > > > > > > for 1DB. > > > > > > > > > > > > Can anyone help? > > > > > > > > > > > > THX- Nascondi testo citato > > - Mostra testo citato -