Sorry to spam, but in re-reading my post I realized that I assumed
people know what I mean by "Shared Code."

Basically I would have one main code-base that will contain code that
all clients inherit from.

By default a client would just be running straight off that "shared"
code-base, so 2 new clients will look identical until they ask for
modifications.

Then, clients can ask to override certain classes/functions to make
changes to how things work on their instance.  i.e. change how
something displays on page X, or collect this extra field that is
pertinent to them but not others.  Then they can also ask for more
drastic changes, like if one client wants an entire new page that
other clients don't have.

By doing this, clients can have their special features, but I can
still make overall changes/bug fixes to all clients at once when I
modify the "shared" code.

That is what I am trying to accomplish, while still using django ..
and I am not sure how to massage django to work in this scenario.

On Feb 4, 1:57 pm, bbeaudreault <compbr...@gmail.com> wrote:
> Note:  I could just make one big app, and deploy it separately for all
> my clients.  But I want to be able to easily roll out big changes to
> all my clients, without having to replicate code a manually across
> them.  That's why a Shared -> Client inheritance handler type of thing
> would work perfectly here.
>
> On Feb 4, 1:54 pm, bbeaudreault <compbr...@gmail.com> wrote:
>
> > Ok, yea.  Sorry for the title, it is hard to generalize this question
> > enough to be short like that.
>
> > Anyway, at the company I work at we use mod_perl, and we have
> > clients.  Our code-base is set up like this:
>
> > Shared Code -> Client Code
>
> > The client code inherits and overrides shared code.  So if in a
> > certain script we overrode a shared function, just that client would
> > see those changes.
>
> > So our clients go to our website like this 
> > :http://client.mycompany.com/client/.
>
> > I am working on a project in Django, and I too want to give clients
> > the ability to customize their site (both override and extend) and
> > towards that end, I am using my company's setup as a general template
> > of what I want to do.  If this got up and running, the general
> > workflow would be: the client realizes something they want, they call
> > up our support, ask for it, a ticket is issued to the developers, and
> > we override shared code for that client.
>
> > Of course, my company uses Perl, and I want to use Python/Django.  Two
> > very different languages.  My company is also kind of old, so a lot of
> > how we run that handler is probably not the most up to date way of
> > doing it.  I know with Python I can use its built in Inheritance to
> > override Class methods and such .. but I am wondering how I would best
> > deal with this inside django?
>
> > Should I have multiple django instances running? one for each client?
>
> > Can I just make a separate app for each client and run under 1 django
> > instance? i.e. have myproject.shared, myproject.client1,
> > myproject.client2, etc
>
> > I appreciate any advice that you may have.  Also, I tried searching
> > google for modifying django handler, but I am not quite sure what
> > terms I should be looking for.  Is there a specific term for what I am
> > trying to do, where I can read up on this sort of approach?  Is there
> > some standard way of running customized clients on shared code?
>
> > Thanks,
>
> > Bryan
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To post to this group, send email to django-users@googlegroups.com
To unsubscribe from this group, send email to 
django-users+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/django-users?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to