The model does not "routinely run" at all. None of your app code will run 
at all (ever) unless (a) you make an HTTP request to the app (i.e., via a 
browser), (b) you run a web2py shell via the command line via the -S 
option, or (c) you run a job via the web2py scheduler.

I highly doubt your code is taking 15 seconds to run. However, it is 
unclear how the value test2 is getting from your module code to a web page, 
as you don't show that in your example. Please show *all* the relevant code 
and explain exactly what you are doing to observe values inserted/changed 
in the database.

Anthony

On Tuesday, December 8, 2015 at 2:05:28 PM UTC-5, Aydin S wrote:
>
> I think when a table gets updated on the web it already refreshes the 
> databases immediately and the  data gets written, but I think the models 
> routinely run or there is a delay of about 15 second after you update the 
> data in a module to get into the database.
>
> On Tuesday, 8 December 2015 14:03:31 UTC-5, Aydin S wrote:
>>
>> I am testing it with a test code which is exactly what I wrote so there 
>> is only one table with my field. 
>> I think it makes sense, that's why there is scheduler and cron developed 
>> for web2py. I'm trying to understand if I should run model1.py (where the 
>> module1 is imported) as a web2py cron or scheduled task.
>>
>> On Tuesday, 8 December 2015 13:58:37 UTC-5, Richard wrote:
>>>
>>> 15 seconds... how many tables does your app has? I think you are doing 
>>> something wrong somewhere...
>>>
>>> Richard
>>>
>>> On Tue, Dec 8, 2015 at 1:53 PM, Aydin S <[email protected]> wrote:
>>>
>>>> I realized the data gets updated but it takes around 15 seconds which I 
>>>> think it is what the model1.py routinely runs. This is a problem for me 
>>>> because I want it to run faster. 
>>>>
>>>>
>>>> On Tuesday, 8 December 2015 13:37:42 UTC-5, Richard wrote:
>>>>>
>>>>> Notice if you chage your module file you need to restart web2py... Or 
>>>>> user track change feature, but in the past it was broken don't know if 
>>>>> now 
>>>>> it works properly... 
>>>>> http://web2py.com/books/default/chapter/29/04/the-core?search=track_changes
>>>>>
>>>>> On Tue, Dec 8, 2015 at 1:33 PM, Aydin S <[email protected]> wrote:
>>>>>
>>>>>> In other words, module1 does not seem to run unless I refresh the 
>>>>>> website. 
>>>>>>
>>>>>> On Tuesday, 8 December 2015 13:28:26 UTC-5, Aydin S wrote:
>>>>>>>
>>>>>>> Here is what I have:
>>>>>>>
>>>>>>> In model db.py I have:
>>>>>>>
>>>>>>> db.define_table('Table1',
>>>>>>>     Field('var1', 'integer'),
>>>>>>> from module1 import insert_record
>>>>>>> insert_record(db)
>>>>>>>
>>>>>>> and in a module1 I write on the database and also get access to the 
>>>>>>> database:
>>>>>>>
>>>>>>> from gluon import current
>>>>>>> def insert_record(db):
>>>>>>>     db = current.db
>>>>>>>     test1 = 2 #for example
>>>>>>>     db.Table1.insert(var=test1)
>>>>>>>     test2 = db().select(db.Table1.var1, orderby=~db.Table1.id, 
>>>>>>> limitby=(0, 1))[0].var1
>>>>>>>
>>>>>>> Then test2 is used to show up on a display. test2 changes because 
>>>>>>> var1 changes. The problem is that test2 does seem to get updated when 
>>>>>>> var1 
>>>>>>> changes without refreshing the website (I refresh the databases). Is it 
>>>>>>> because this action is in the models? Should I use scheduler to do this?
>>>>>>>
>>>>>>> On Tuesday, 8 December 2015 13:15:38 UTC-5, Richard wrote:
>>>>>>>>
>>>>>>>> Difficult to say without seeing the code, you may need db.commit() 
>>>>>>>> or not.
>>>>>>>>
>>>>>>>> Richard
>>>>>>>>
>>>>>>>> On Tue, Dec 8, 2015 at 1:05 PM, Aydin S <[email protected]> wrote:
>>>>>>>>
>>>>>>>>> I got another question if you could help. 
>>>>>>>>> The database does not get updated without I refresh the website in 
>>>>>>>>> this scenario. I don't know why it is, do I need to use commit() 
>>>>>>>>> somewhere 
>>>>>>>>> or since this is in the models it will not run as the variable inside 
>>>>>>>>> the 
>>>>>>>>> module changes? Do I have to use scheduler? Any idea? 
>>>>>>>>>
>>>>>>>>> On Monday, 7 December 2015 18:56:10 UTC-5, Hans Soflao wrote:
>>>>>>>>>>
>>>>>>>>>> Thanks Anthony and Richard. 
>>>>>>>>>> Yes, my variable was inside the module and was not a global one. 
>>>>>>>>>> Thanks for the link, I am running the variable inside the function 
>>>>>>>>>> and it 
>>>>>>>>>> is local.
>>>>>>>>>> I tested the code and it worked.
>>>>>>>>>>
>>>>>>>>>> On Monday, December 7, 2015 at 12:44:40 PM UTC-5, Richard wrote:
>>>>>>>>>>>
>>>>>>>>>>> @Hans, what is your question about variable in module exactly?
>>>>>>>>>>>
>>>>>>>>>>> What you did seems correct to me...
>>>>>>>>>>>
>>>>>>>>>>> About "db = current.db" be aware of that : 
>>>>>>>>>>> http://web2py.com/books/default/chapter/29/04/the-core#Warning--Do-not-use-the-current-object-in-global-scope-in-a-module
>>>>>>>>>>>
>>>>>>>>>>> On Mon, Dec 7, 2015 at 12:13 PM, Hans Soflao <[email protected]> 
>>>>>>>>>>> wrote:
>>>>>>>>>>>
>>>>>>>>>>>> Thank you, I used the method Anthony mentioned and it worked.
>>>>>>>>>>>> Now a follow up question, in order to have access to database 
>>>>>>>>>>>> in this module to assign var1 (defined in the database) to var2 
>>>>>>>>>>>> (defined in 
>>>>>>>>>>>> the module) what is the best method?
>>>>>>>>>>>>
>>>>>>>>>>>> For instance to have access to the latest row of data in the 
>>>>>>>>>>>> table1 defined in the model as 
>>>>>>>>>>>> db.define_table('Table1',
>>>>>>>>>>>>     Field('F1', 'integer'))
>>>>>>>>>>>>
>>>>>>>>>>>> should I have in the model the following?:
>>>>>>>>>>>>
>>>>>>>>>>>> from gluon import current
>>>>>>>>>>>> current.db = db
>>>>>>>>>>>>
>>>>>>>>>>>> and in the module module1.py?:
>>>>>>>>>>>>
>>>>>>>>>>>> def module1():
>>>>>>>>>>>>     db = current.db
>>>>>>>>>>>>     var2=db().select(db.Table1.var1, orderby=~db.Table1.id, 
>>>>>>>>>>>> limitby=(0, 1))[0].var1
>>>>>>>>>>>>
>>>>>>>>>>>> Thanks
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>>
>>>>>>>>>>>> On Friday, December 4, 2015 at 9:39:35 AM UTC-5, Aydin S wrote:
>>>>>>>>>>>>
>>>>>>>>>>>>> This might be asked before and I already found a similar 
>>>>>>>>>>>>> question in here: 
>>>>>>>>>>>>> https://groups.google.com/forum/#!topic/web2py/0k0Fvw6fmb8
>>>>>>>>>>>>> but this seemed a bit confusing. How to write on database from 
>>>>>>>>>>>>> within a module?
>>>>>>>>>>>>> I have a table defined in db.py (model) as follows:
>>>>>>>>>>>>> db.define_table('Table1',
>>>>>>>>>>>>>     Field('F1', 'integer'))
>>>>>>>>>>>>>
>>>>>>>>>>>>> Now I have a variable var1 in the module module1.py that I 
>>>>>>>>>>>>> want to write it into F1.
>>>>>>>>>>>>>
>>>>>>>>>>>>> var1=2
>>>>>>>>>>>>>
>>>>>>>>>>>>> Is this similar approach to read a variable from database in a 
>>>>>>>>>>>>> module?
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>>
>>>>>>>>>>>>> -- 
>>>>>>>>>>>> Resources:
>>>>>>>>>>>> - http://web2py.com
>>>>>>>>>>>> - http://web2py.com/book (Documentation)
>>>>>>>>>>>> - http://github.com/web2py/web2py (Source code)
>>>>>>>>>>>> - https://code.google.com/p/web2py/issues/list (Report Issues)
>>>>>>>>>>>> --- 
>>>>>>>>>>>> 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 [email protected].
>>>>>>>>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>>>>>>>>
>>>>>>>>>>>
>>>>>>>>>>> -- 
>>>>>>>>> Resources:
>>>>>>>>> - http://web2py.com
>>>>>>>>> - http://web2py.com/book (Documentation)
>>>>>>>>> - http://github.com/web2py/web2py (Source code)
>>>>>>>>> - https://code.google.com/p/web2py/issues/list (Report Issues)
>>>>>>>>> --- 
>>>>>>>>> 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 [email protected].
>>>>>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>>>>>
>>>>>>>>
>>>>>>>> -- 
>>>>>> Resources:
>>>>>> - http://web2py.com
>>>>>> - http://web2py.com/book (Documentation)
>>>>>> - http://github.com/web2py/web2py (Source code)
>>>>>> - https://code.google.com/p/web2py/issues/list (Report Issues)
>>>>>> --- 
>>>>>> 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 [email protected].
>>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>>
>>>>>
>>>>> -- 
>>>> Resources:
>>>> - http://web2py.com
>>>> - http://web2py.com/book (Documentation)
>>>> - http://github.com/web2py/web2py (Source code)
>>>> - https://code.google.com/p/web2py/issues/list (Report Issues)
>>>> --- 
>>>> 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 [email protected].
>>>> For more options, visit https://groups.google.com/d/optout.
>>>>
>>>
>>>

-- 
Resources:
- http://web2py.com
- http://web2py.com/book (Documentation)
- http://github.com/web2py/web2py (Source code)
- https://code.google.com/p/web2py/issues/list (Report Issues)
--- 
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 [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to