Wednesday, August 24, 2016

Re: Clarifying Project vs Apps



2016-08-24 19:12 GMT+02:00 Lee Hinde <leehinde@gmail.com>:
On Wed, Aug 24, 2016 at 9:23 AM, Rich Shepard <rshepard@appl-ecosys.com> wrote:
On Wed, 24 Aug 2016, Lee Hinde wrote:

My tuppence.

Lee,

  Before or after Brexit? The value might change. :-)

No, an app is a logical grouping of objects/tables. You might, for
instance,have an Invoice app that would include an Invoice table (model)
and a LineItems table. Products and related tables would be in a different
app.

  OK, that makes sense.

  In my current project, then, all modules for company, contact, activity,
case, etc. will be in a single app. And, perhaps, another app would be for
reporting?

  Translating from product-oriented applications to service-oriented ones is
not always easy.

Thanks very much,

Rich
So, no one is going to grade it. You're making this for yourself, so I wouldn't over think it. I'm working on a project now that only has two apps, one with all the core models and one for utility models (like choice lists).(I'm using several packages, so the database has more to it than that.) 

It sounds like something like that would work for you and still be 'right'. Especially as a first time out of the gate project, keep it simple. IMHO.

While it will certainly evolve as you use it, you're not gong to suddenly wake up and need 18 more apps to meet your needs. And if that does happen, you can rearrange. 

--
You received this message because you are subscribed to the Google Groups "Django users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to django-users+unsubscribe@googlegroups.com.
To post to this group, send email to django-users@googlegroups.com.
Visit this group at https://groups.google.com/group/django-users.
To view this discussion on the web visit https://groups.google.com/d/msgid/django-users/CA%2BePoMwf38zOGytfpoQc49pdSuxLyw-zqEdaRcqcjhJE3dV4VA%40mail.gmail.com.

For more options, visit https://groups.google.com/d/optout.

If you know how your project will be used, you can usually group the models and views in logical apps. For example a customer app that has the customer (user) model, address model. Then another app for orders and invoices and so on.

The only thing you have to make sure is that the grouping makes sense for you. You can also check out different design patterns that can help you design your application, but you are usually the one who knows the application best.

Regards,

Andréas

--
You received this message because you are subscribed to the Google Groups "Django users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to django-users+unsubscribe@googlegroups.com.
To post to this group, send email to django-users@googlegroups.com.
Visit this group at https://groups.google.com/group/django-users.
To view this discussion on the web visit https://groups.google.com/d/msgid/django-users/CALXYUb%3DfR9JuwaKqvQUM0Q6JJ_TDsqnNBLaGnGCY1Cz1Q75%2Bnw%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

No comments:

Post a Comment