Wait if you use Angular you won't really need to care about performance issue before a lot of time... Since you are not going to experiment be performance issue except when you reload page...
Richard On Wed, Apr 15, 2015 at 12:55 PM, Sébastien Loix <seb1...@gmail.com> wrote: > Thank you Richard, I really appreciate your time to explain it to me. > I think I start understanding it all slowly... > > You're right that until I don't have any performance issue I shouldn't try > to optimize anything. I already created some modules that I import when > needed (mainly for API calls that I make from Angular, it works really > great) so a lot of code and functions are there. I will now try to see if > creating plugins would help at this point or if it is an optimization I > should do latter on. > > As you said, the idea of having conditional models quiet pushes me away as > I would have to rethink exactly what models depend on others to be able to > put them in folders... I might get crazy before time :) > > Once again thank you for the help! > Best, > Sébastien. > > @Steve: I will have a look in the mailing about defining tables inside > modules. It sounds interesting. Thanks for the info! > > On Wednesday, 15 April 2015 15:18:50 UTC+2, Richard wrote: >> >> Sébastien, >> >> Start by making something then when you will need performance you can >> work on it. I have 155 tables in my app and it is not the model that slow >> down things... It is more the number of records in these tables that matter >> so far... I mean, I should use SQLFORM.grid which use paging and load only >> small amount of records at a time which limit the loading time of grid page >> which are the page that requires the most processing. You better not define >> function or class in models files which really degrad performance. You can >> activate lazy table by respecting some rules when defining your table and >> set lazy table flag to true (this has no cost and should improve >> performance). You may also consider models/subfolder which make models file >> parsing conditionnal to the controller called though it has many chances to >> make your app less dry (I avoid that)... So as Steve mention there is >> "Model less app" for which you should found many thread on the mailing-list >> detailing how to use it. But as I said, just go that way once you really >> need it. It bring much more work for you and will slow down your pace of >> developpement if you do that too early. >> >> Richard >> >> On Tue, Apr 14, 2015 at 8:03 PM, 黄祥 <steve.van...@gmail.com> wrote: >> >>> yes, you are right, models executed on every request. but you can use, >>> model less application (define table using modules, best practice if you >>> have the same table that been used by more than 1 web2py app) or >>> conditional models (response.models_to_run) >>> In book you can see an advice : >>> >>> - Minimize the code in models: do not define functions there, define >>> functions in the controllers that need them or - even better - define >>> functions in modules, import them and use those functions as needed. >>> >>> >>> ref: >>> http://web2py.com/books/default/chapter/29/04/the- >>> core#Conditional-models >>> http://web2py.com/books/default/chapter/29/06/the- >>> database-abstraction-layer#Model-less-applications >>> http://web2py.com/books/default/chapter/29/13/ >>> deployment-recipes#Efficiency-tricks >>> >>> best regards, >>> stifan >>> >>> -- >>> 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 web2py+un...@googlegroups.com. >>> 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 web2py+unsubscr...@googlegroups.com. > 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 web2py+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.