Django - Creating My Own CMS - Architecture Tips

I planned how I was going to architecture of my CMS. And I would like to consult:

The plan is that I will create a project called CMS. In this, I will create an application folder with various applications, such as the admin module, blog module, etc.

And for every new site that I develop, I will also create this as a new application in the project. So this means that every site / application that I create will need its own database, is this possible?

And secondly, is this a good idea at all? Or should I create each new site as a new project.

I realized that this would be a good idea, because then I can very easily reuse applications on different sites.

Thanks.

+4
source share
1 answer

It is not clear why you need one application per site? There are two possibilities: if the only difference between sites is templates and static files, you do not need a separate application for each site. If the difference is more global, you should not combine these sites in one project, but rather use regular applications in many projects (one project per site).

For multiple databases, you can look at the built-in infrastructure of Django sites ; it does what you need in one database.

+3
source

Source: https://habr.com/ru/post/1379902/


All Articles