So what is the conclusion? how can you fire a callback for a function when a child table has a field added or edited using oncreate and onupdate respectively.
On Wednesday, 7 November 2012 14:43:26 UTC+2, vivek wrote: > > Hmmm , > > unsure of how to determine the different table , i tried using > forms.vars.net - as this field is unique to my parent table in the same > oncreate function. So basically , I have forms.vars.xyz from my child table > and able to use it to do what i need. But forms.vars.net is unusable > which means oncreate ,onupdate doesnt trigger for parent table. > > Any work arounds for this? > > > > > On Wednesday, November 7, 2012 5:21:50 AM UTC+4, howesc wrote: >> >> good question.....i don't know the answer to it, but i suspect there is a >> way in your oncreate method to determine which table just had a creation >> and do different actions based on that. >> >> On Monday, November 5, 2012 11:41:17 PM UTC-8, vivek wrote: >>> >>> >>> Hi , >>> >>> So in this case how do I make sure it fires only when a new record >>> is created for the child table in this case "quotelines" . Suppose if I >>> have 2 different functions to be fired for the parent - oncreate and child >>> - oncreate? >>> >>> Regards, >>> Vivek >>> >>> >>> >>> On Monday, October 29, 2012 11:39:08 PM UTC+4, howesc wrote: >>>> >>>> something like: >>>> >>>> def myondelete(table, row_id): >>>> .... >>>> pass >>>> >>>> form = SQLFORM.smartgrid(..., ondelete=myondelete, ...) >>>> >>>> >>>> >>>> On Sunday, October 28, 2012 6:57:12 AM UTC-7, vivek wrote: >>>>> >>>>> So how would the new code be? I am a newbie a bit of direction needed! >>>>> >>>>> >>>>> >>>>> >>>>> On Sun, Oct 28, 2012 at 5:39 PM, Niphlod <nip...@gmail.com> wrote: >>>>> >>>>>> oncreate, ondelete, onupdate are callbacks to functions, not dicts.... >>>>>> >>>>>> >>>>>> On Sunday, October 28, 2012 12:26:39 PM UTC+1, vivek wrote: >>>>>>> >>>>>>> Hi, >>>>>>> >>>>>>> @auth.requires_login() >>>>>>> def index(): >>>>>>> response.view = 'Final/pricelist.html' >>>>>>> form = SQLFORM.smartgrid(db.sourcelis**t,linked_tables=[ >>>>>>> 'itemowner'],**deletable=dict(sourcelist=Fals**e,itemowner=True),editable >>>>>>> =dict(sourcelist=False**,itemowner=True), details=dict(sourcelist= >>>>>>> False,**itemowner=False),links = dict(project=[lambda row: A(SPAN( >>>>>>> _class='icol-find'),_**href=URL("sourcelist","**itemowner",args=[row >>>>>>> .id]))]),o**ncreate=dict(itemowner=[avgpri**ce]),ondelete=dict( >>>>>>> itemowner=[**'avgprice'])) >>>>>>> return dict(form=form) >>>>>>> >>>>>>> @auth.requires_login() >>>>>>> def avgprice(): >>>>>>> ....... >>>>>>> >>>>>>> The above is my code . "itemowner" is my child table. I have >>>>>>> manually tried running avgprice() from appadmin to make sure it works. >>>>>>> There wasnt an issue. I just need to get the smartgrid to trigger >>>>>>> avgprice. >>>>>>> >>>>>>> Thanks! >>>>>>> >>>>>>> -- >>>>>> >>>>>> >>>>>> >>>>>> >>>>> >>>>> -- --- You received this message because you are subscribed to the Google Groups "web2py-users" group. To unsubscribe from this group and stop receiving emails from it, send an email to web2py+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/groups/opt_out.