django 项目和其中的各个应用程序的真正含义是什么?
我的意思是 - AFAIK 你不能创建一个项目并完全生活在你创建的那个项目中,你必须在那个项目中创建一个应用程序才能在 django 中实际做一些事情。如果我错了,请纠正我。
现在真正的 django 项目的结构应该是什么?我正在写一个电子商店。假设我的项目名为foo:
/foo
/foo
/settings.py
/templates
/urls.py
/wsgi.py
/shop
/__init__.py
/admin.py
/models.py
/tests.py
/views.py
并完全在里面做所有事情/foo/shop/,但我urls.py在里面编辑/foo/foo/等等。
我一直在关注Django Book,但我已经开始获得一种奇怪的感觉,这种感觉/foo/foo/只是为了一个主文件夹“将东西拼接在一起”,但个别的东西应该只在 中完成/foo/shop/,但不限于。最好在/foo/web/, /foo/products/, /foo/forum/, /foo/controlpanel/, /foo/shop/,/foo/helpdesk/等/foo/backoffice/
那是对的吗?我应该把所有与产品相关的东西/foo/products/,包括存储管理、运输、经销商、价格等,然后把这些产品的管理(从员工方面)放到/foo/backoffice/,这将作为某种“ django.contrib.admin”吗?那是对的吗?然后,如果我想为多个客户托管多个实例(具有完全独立的数据库和东西),我应该只创建一个准系统项目,将这些东西放在一起,配置设置,然后以某种方式移动单个组件的中央存储库,并通过INSTALLED_APPS? 因为那会很酷!我的意思是 - 在全局范围内进行所有更改,而不是触及用户数据和配置,除非必要(在模型中添加列等)。这真的应该如何使用 django 吗?还是我完全偏离了轨道,做的事情完全错了,而这一段没有任何django 意义?
我对此比较陌生。我以前一直在使用 PHP,尽管 Django 很难掌握基本的知识,但我并不后悔,并计划弃用我迄今为止创建的任何 PHP 项目并使它们脱机并全部替换与 django。嗯 - 它是有意义的,不是一个单一用途的网站。不仅因为 Django 很棒而且用途广泛,而且我还可以轻松扩展它……</p>
那么……我应该如何真正设计 Django 项目、应用程序,以及如何在生产中使用它们,将它们提供给多个客户?
谢谢!