如何在Django中设置组(子站点)

如何在Django中设置组(子站点),django,django-models,django-admin,Django,Django Models,Django Admin,我是Django的新手,来自Drupal家族。在那里,我们可以创建内容和子网站组;我怎么能对Django做这样的事 假设我正在使用Django为我的公司创建此网站,公司的每个部门都需要在该网站上设置一个私人部分。例如,设计人员有自己的网站部分,后端开发人员无法进入。而后端开发人员也将拥有同样的东西 我想建立这样一个网站,我只需登录到Django admin并添加一个新的类别或子网站或组(无论Django术语是什么),使用其他组的相同设置或类似设置。这取决于你所说的“私人部分”是什么意思。你可能应

我是Django的新手,来自Drupal家族。在那里,我们可以创建内容和子网站组;我怎么能对Django做这样的事

假设我正在使用Django为我的公司创建此网站,公司的每个部门都需要在该网站上设置一个私人部分。例如,设计人员有自己的网站部分,后端开发人员无法进入。而后端开发人员也将拥有同样的东西


我想建立这样一个网站,我只需登录到Django admin并添加一个新的类别或子网站或组(无论Django术语是什么),使用其他组的相同设置或类似设置。

这取决于你所说的“私人部分”是什么意思。你可能应该试着从另一个角度看它:

Django通过“应用程序”拆分网站的功能。每个应用程序执行其特定的操作,并在数据库中获取一组表。应用程序可以访问彼此的表。例如,其他应用程序访问Auth应用程序的用户、组和权限表是很常见的。这就是你所说的“子站点”吗

至于访问控制,用户可以被分配到组中,他们可以被分配到不同的组中。为每个模型(即数据库表)自动生成添加、更改和删除权限。您还可以添加自己的权限

我认为在Django级别,您无法将设计人员与后端开发人员分开。您需要做一些其他的事情,例如为每个组维护单独的源存储库,并合并它们以创建可用的站点(每个组对另一个组具有只读访问权限)。这实际上取决于团队的纪律,因为这些元素可能相互交织

Django建议使用其他方式来提供静态文件,比如直接从您的web服务器,或者从另一台带有简单HTTP服务器的机器(无CGI/WSGI/任何内容)提供静态文件。这是因为与直接服务相比,Django只能降低静态文件的速度。但是,对于测试,可以启用静态页面服务器

考虑到所有这些,静态文件通常相当于CSS、图像、媒体和JavaScript。其中,后端人员可能想搞乱JS,但仅此而已,所以这可能是设计师的回购协议

Django树本身具有站点和应用程序的代码。几乎都是后端的东西。例外情况是HTML模板文件,位于每个应用程序的“模板”目录中。这些文件由后端视图代码提供的上下文数据填充。我不知道这是你们的前端还是后端;如果有很多CSS规则,它可能主要是后端,但我认为这不太可能

在Django,你可以做很多事情,让一方或另一方的生活更轻松。例如,模板标记允许自定义Python代码生成要插入页面的HTML。例如,我使用它们来生成选项卡栏和窗格

如果不更好地了解你的需求,我真的帮不了你多少忙。这个问题仍然模糊不清。你最好花一两天的时间来阅读本教程,看看Django透视图是什么,然后找出它如何(或是否!)符合你的需要