我有一个相当复杂的“产品”,准备使用Django构建。在这种情况下,我将避免使用术语“项目”和“应用程序”,因为我不清楚它们在Django中的具体含义。
项目可以有许多应用程序。应用程序可以在许多项目之间共享。精细。
我不是在改造博客或论坛-我看不到产品的任何部分在任何情况下都可以重用。直观地,我将其称为“应用程序”。然后,我是否将所有工作都放在一个“ app”文件夹中?
如果是这样的话 ……就Django的project.app
命名空间而言,我倾向于使用myproduct.myproduct
,但这当然是不允许的(但是我正在构建的应用程序是我的项目,而我的项目是一个应用程序!)。因此,我导致相信也许我应该通过为每个“重要”模型构建一个应用程序来接近Django,但是我不知道在架构中将边界划分为应用程序的位置-我有很多东西具有相对复杂关系的模型。
我希望对此有一个通用的解决方案…
什么是阻止你使用的myproduct.myproduct?
要实现该目标,大致需要执行以下操作:
django-admin.py startproject myproduct
cd myproduct
mkdir myproduct
touch myproduct/__init__.py
touch myproduct/models.py
touch myproduct/views.py
等等。如果我说views.py
不必打来电话会有所帮助views.py
吗?如果你可以在python路径上命名一个将被处理的函数(通常为package.package.views.function_name)。就那么简单。所有这些“项目” /“应用”东西都只是python包。
现在,你应该怎么做?或更确切地说,我该怎么做?好吧,如果你创建一个显著一块可重复使用的功能,好比说一个标记编辑器中,当你创建一个“顶级应用程序”那可能含有widgets.py,fields.py,context_processors.py
等等-你可能要导入所有的东西。
同样,如果你可以创建类似博客这样的格式,并且在安装过程中使用通用格式,则可以将其包装在应用程序中,包括其自己的模板,静态内容文件夹等,并配置Django项目的实例以使用该模板应用程序的内容。
没有硬性规定可以执行此操作,但这是框架的目标之一。包括模板在内的所有内容,都允许你从某个共同的基础进行包含,这意味着你的博客应仅通过照顾自己的部分而紧密地适合任何其他设置。
但是,要解决你的实际问题,是的,没有什么可以说你不能使用顶级项目文件夹。这就是应用程序要做的,如果你确实愿意,你可以这样做。但是,出于以下几个原因,我倾向于不这样做:
问题内容: 在Django中,以下两个之间有什么区别: 与 我的目标是在每个下方获得一个唯一的注释ID列表。我已经阅读了文档(实际上已经使用了这两种方法)。结果似乎很相似。 问题答案: 该方法返回一个包含字典的QuerySet: 该values_list()方法返回一个包含元组的QuerySet: 如果使用单个字段,则可以使用返回单个值而不是1元组的QuerySet:
Projects A website that showcases projects! If you want to use it and it's not exactlyfitting your purpose, please do make upstream changes. We expect this projectto be of use to others and we're happ
问题内容: 编写Django查询时,可以同时使用id / pk作为查询参数。 根据django的文档,我知道pk代表主键,它只是一个快捷方式。但是,尚不清楚何时应使用id或pk。 问题答案: 没关系 从实际的主键字段更加独立,即你不需要关心的主键字段是否被称为或或什么的。 如果你的模型具有不同的主键字段,则还可以提供更高的一致性。
ESLint Integrations eslint-plugin-prettier plugs Prettier into your ESLint workflow eslint-config-prettier turns off all ESLint rules that are unnecessary or might conflict with Prettier prettier-esli
IntelliJ提供了多种创建配置的方法。 本章讨论创建临时永久配置的选项。 它还讨论了在其他用户之间共享配置的方法。 创建临时配置 运行或调试Java类或测试用例时会创建临时配置。 请考虑以下步骤以了解其工作原理 - 创建一个Java类。 右键单击它并选择“运行”选项。 第一次运行后,临时配置将添加到运行菜单中。 创建永久配置 通过使用IntelliJ保存临时配置,可以将其转换为永久配置。 要保
温馨提示:项目已停止维护 Cyberience Projects 是一个用 PHP CodeIgniter 框架开发的基于 Web 的项目管理系统,主要功能包括项目和任务的协作管理、客户和用户管理、时间跟踪等。