Doesn't work with code completion, and will be a maintenance nightmare!

I spent weeks trying different code organisation patterns with web2py
including what you mentioned, everything I attempted just caused more
problems and made the code less maintainable.

Like I keep saying, it all comes down to programmers preference. I started
programming with Java, therefore I like object oriented programming that
Flask+SQLAlchemy uses.

--
Thadeus




On Sun, Nov 14, 2010 at 11:23 AM, mdipierro <mdipie...@cs.depaul.edu> wrote:

> Nothing prevents you in web2py to create a
>
>   modules/models/mymodel.py
>
> then
>
>   import applications.yourapp/modules/models.mymodel.py
>
> and then call a function in there that defines the tables you need.
> And you can have more than one mymodel.
>
> This anyway will be easy if we add support for lazy tables and thread
> local globals.
>
>
> On Nov 14, 10:36 am, Thadeus Burgess <thade...@thadeusb.com> wrote:
> > >>>A good advise, but, not always possible. I am considering to migrate
> an
> >
> > App in the range of 70-100 tables to web2py and there are tables that are
> > like pillars, belong to several groups (customers, employees,
> projects,...)
> > How we could manage this >>>shared tables?
> >
> > >>>Also sometimes its hard to determine an order for the tables to avoid
> >
> > referencing a "still undefined" table.
> >
> > >>>There is another type of large applications, enterprise level with
> >
> > hundreds or thousands of tables. The approach of multiples apps sharing
> same
> > database is useful, but how could we solve the division of tables in
> apps,
> > is it better to define the >>>model in one place and "import" the
> required
> > tables on the apps?
> >
> > This is why I prefer Flask + SQLAlchemy.
> >
> > --
> > Thadeus
> >
> > 2010/11/14 José Ignacio Hurtado <jose.i.hurt...@gmail.com>
> >
> > > A good advise, but, not always possible. I am considering to migrate an
> App
> > > in the range of 70-100 tables to web2py and there are tables that are
> like
> > > pillars, belong to several groups (customers, employees, projects,...)
> How
> > > we could manage this shared tables?
> >
> > > Also sometimes its hard to determine an order for the tables to avoid
> > > referencing a "still undefined" table.
> >
> > > There is another type of large applications, enterprise level with
> hundreds
> > > or thousands of tables. The approach of multiples apps sharing same
> database
> > > is useful, but how could we solve the division of tables in apps, is it
> > > better to define the model in one place and "import" the required
> tables on
> > > the apps?
> >
> > > Jose.
> >
> > > 2010/11/14 mdipierro <mdipie...@cs.depaul.edu>
> >
> > > I agree that there are things we can improve in web2py.
> >
> > >> Yet, if a complex application have many pieces that are untangled, the
> > >> import mechanism does not necessarily help you. The solution is trying
> > >> to design components that are relatively independent. If you can do
> > >> this, web2py does not bet in the way. For example, you have 100 tables
> > >> functionally grouped in ~10 and all they need to share is
> > >> authentication, you may want to separate the functions in 10 different
> > >> web2py applications (all sharing one database, each defining only the
> > >> tables it needs, and sharing one session cookie). This modular design
> > >> solves lots of problems.
> >
> > >> I have heard of people who have developed complex applications in
> > >> Django (which uses the import you suggest) and run into problems
> > >> because they were using more ram than needed since all modules were
> > >> always imported. In web2py controllers are executed only when called
> > >> and if you make many small controllers you save lots of memory.
> > >> Controllers than then import the modules they need and only those.
> >
> > >> Massimo
> >
> > >> On Nov 13, 7:28 pm, Thadeus Burgess <thade...@thadeusb.com> wrote:
> > >> > The biggest contributing factor is that web2py is executed and not
> > >> import.
> > >> > The coder must always be sure to align objects and database in the
> > >> correct
> > >> > order, including any auxiliary functions, class mappings, queries.
> > >> He/she
> > >> > has to worry about the "order" of everything. Sometimes you can't
> have
> > >> such
> > >> > order for complex systems. I think an import based system solves
> this in
> > >> > that the import statements declare the order instead of the physical
> > >> > location of the code doing that.
> >
> > >> > --
> > >> > Thadeus
> >
> > >> > On Sat, Nov 13, 2010 at 2:49 PM, Jason Brower <encomp...@gmail.com>
> > >> wrote:
> > >> > >  These are encouraging.
> > >> > > In large deployment I mean it in the most external sense of it.
> > >>  Facebook
> > >> > > is big, myspace is big, those kinds of object were what I was
> aiming
> > >> for.
> > >> > > And with Massimo's comment about the database size.  I think your
> > >> right, the
> > >> > > framework does become less relavent.  In what ways in a large
> codebase
> > >> > > making web2py code messier and is there a solution to it in
> another
> > >> > > framework?
> > >> > > BR,
> > >> > > J
> >
> > >> > > On Sat, 2010-11-13 at 11:48 -0600, Thadeus Burgess wrote:
> >
> > >> > > What is large deployment?
> >
> > >> > > Is it a large codebase that you must manage for an internal
> dashbaord,
> > >> or
> > >> > > just alot of users/database io that needs to scale out for
> worldwide
> > >> access?
> >
> > >> > > If its the first case, web2py can get really complicated in
> dealing
> > >> with
> > >> > > lots of models and difficult to manage in an efficient manner. The
> > >> larger
> > >> > > your codebase the messier web2py apps will become. In the end,
> this
> > >> would
> > >> > > ultimately be up to the preferences of you and your team and what
> your
> > >> > > willing to put up with.
> >
> > >> > > In the second case, framework hardly matters at that point. Disqus
> > >> uses
> > >> > > django, facebook uses php, reddit uses pylons, myspace uses
> > >> coldfusion,
> > >> > > microsoft uses asp, oracle uses java. Its always the database that
> > >> becomes
> > >> > > an issue regardless of programming language or web framework.
> >
> > >> > > --
> > >> > > Thadeus
> >
> > >> > >  On Sat, Nov 13, 2010 at 10:53 AM, mdipierro <
> mdipie...@cs.depaul.edu
> >
> > >> > > wrote:
> >
> > >> > > I agree with Villas. The larger the development the more the
> database
> > >> > > becomes the bottleneck and the framework irrelevant.
> >
> > >> > > Massimo
> >
> > >> > > On Nov 13, 8:35 am, villas <villa...@gmail.com> wrote:
> > >> > > > Hi Jason
> >
> > >> > > > I guess you have to define 'large deployment' first of all.
>  Number
> > >> of
> > >> > > > records and size of DB? Number of concurrent users? Large data
> model
> > >> > > > or number of forms etc?  Number of servers -- or replication?
> > >>  Global
> > >> > > > coverage?
> >
> > >> > > > In principle I don't think there's any reason why Web2py would
> be
> > >> > > > worse than other frameworks.  Usually it is much better!  As an
> > >> > > > example,  I think deploying to the Google App Engine should be
> able
> > >> to
> > >> > > > scale sufficiently for everything but extreme cases :)
> >
> > >> > > > If you specify more about what you wish to achieve this group
> may be
> > >> > > > able to give more specific advice how best to organise your
> project.
> >
> > >> > > > -D
> >
> > >> > > > On Nov 13, 7:12 am, Jason Brower <encomp...@gmail.com> wrote:
> >
> > >> > > > > I love web2py and it's the only framework i feel i am fully
> > >> capable to
> > >> > > do or learn to do quickly.
> > >> > > > > However, I remember see that this framework is intended for
> small
> > >> to
> > >> > > medium sized deployments. Is this true? What is it that stops us
> from
> > >> larger
> > >> > > deployment? Should i pickup django because i may need it?
> > >> > > > > Regards,
> > >> > > > > jb
> >
> > > --
> > > Un saludo,
> >
> > > José Ignacio Hurtado López
> >
> >
>

Reply via email to