Warning: Can't synchronize with repository "(default)" (Unsupported version control system "svn": No module named svn). Look in the Trac log for more information.

Ticket #1654 (closed defect: duplicate)

Opened 11 years ago

Last modified 11 years ago

Create some kind of "component" archetecture for TG2

Reported by: mramm Owned by: anonymous
Priority: normal Milestone: 2.0
Component: TurboGears Version: trunk
Severity: normal Keywords:


Django has mini apps inside of a "project" so your website could be made up of a blog-app, a wiki app, a forum app, etc. And it has some helpers to make this nice, automtic discovery of models, etc.

Basically this is implemented as apps directories inside your django project, which you configure URL's to and they dispatch from there. Apps contain controlers, templates, and models. User modification of the apps is then easy because they are just code in your project. But syncing up to a newer version of the blog-app is difficult.

In TG2 this could be acomplished by creating a components directory, putting components in there, and having the init on the controller of a component will regester the models in the app (and can take setup parameters). So if you mount a blog comonent in 4 different places it can be configured 4 different ways by passing in different defaults when you instantiate the component's root controller object...

Change History

comment:1 Changed 11 years ago by mramm

  • Status changed from new to closed
  • Resolution set to duplicate
Note: See TracTickets for help on using tickets.