问题标签 [django-3.1]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
3520 浏览

python - 如何正确设置 Django 模板路径?

在最新的 django 文档“从项目的模板目录覆盖” https://docs.djangoproject.com/en/3.1/howto/overriding-templates/ 它表明您可以使用以下模板路径:

我尝试使用[BASE_DIR / 'templates']但我不断收到以下错误:
TypeError: unsupported operand type(s) for /: 'str' and 'str'

当我将代码更改为:[BASE_DIR , 'templates']或时,一切正常[os.path.join(BASE_DIR , 'templates')],在这种情况下没问题。
有人可以解释我在这[BASE_DIR / 'templates']条线上缺少什么吗?谢谢你。

我正在使用 Python 3.8 和 Django 3.1。

0 投票
1 回答
272 浏览

django - Django OneToOneField on_delete CASCADE 约定

我的代码中有这些模型

我了解models.CASCADEDjango 的工作原理。如果我删除一条Address记录,相应的User记录就会被删除,但这不是我想要的。Address如果记录被删除,我希望User记录被删除。

我知道我可以通过放入OneToOneFieldAddress不是来实现这一点User,但是从数据库模式的角度来看,这对我来说没有意义,因为 aUser有一个Address. 一个Address没有User

我尝试搜索如何强制删除以相反的方式进行,但显然 Django 拥有的所有选项都不可能(https://docs.djangoproject.com/en/3.1/ref/models/fields/# django.db.models.ForeignKey.on_delete)。

有人知道替代方案吗?或者以其他方式构建数据库模式的正确方法?

谢谢!

0 投票
1 回答
18 浏览

django - 如果我将应用程序重新组织到应用程序文件夹,Django 无法识别应用程序的 __init__.py 中指定的包

我有一个 Django3 项目,比如说“博客”。应用程序的典型文件夹结构是:

我想让结构干净,所以我将所有应用程序放入一个应用程序文件夹中。所以现在结构如下所示:

我想在文章应用程序/应用程序中使用信号功能,所以文章中的文件是

在应用程序/文章/signal.py 文件中:

在应用程序/文章/apps.py 文件中:

在应用程序/文章/初始化.py 文件中:

如果我重新启动服务器,它会显示错误:

我还在 apps/article/ init .py 文件中尝试了几个设置,例如:

都没有用,一直报错,这个问题我该怎么办?

0 投票
2 回答
226 浏览

python-3.8 - Django-jenkins --enable-coverage 返回“覆盖”对象没有属性“数据”

我正在使用django-jenkins v0.110.0覆盖 v5.2.1,以及Django v3.1。如主题中所述,当我运行时:

我收到此错误:

AttributeError:“覆盖”对象没有属性“数据”

下面是整个堆栈回溯:

tests.py 中的测试方法运行正常,并在报告目录下生成了 junit.xml。但是肯定没有覆盖报告,因为这个错误。我在这里错过了什么吗?我应该指定一个覆盖配置文件(coverage.rc)让它工作吗?是不是和python3.8不兼容?其他问题?

任何想法都非常感谢。提前致谢!

0 投票
2 回答
744 浏览

python - 我的第一个 Django 应用程序 - 不知道如何创建主页

我学习 python 已经有一段时间了,我想让我的一个小程序可供更多人使用。我现在正在学习如何为我的项目创建 URL,但我无法为主页创建 URL。正如我在旧 django 版本的课程之一中发现的那样,您应该在 urls.py 文件中创建一个如下所示的函数:

并将其与views.py中的一些行配对:

这对我不起作用。我还尝试创建这样的路径:

请帮助或指导我了解 django 3.1.1 的最新指南。

编辑以响应@pygeek 的请求:

我的 urls.py 的内容:

settings.py 中我的应用程序数组的内容:

和项目树:

0 投票
2 回答
365 浏览

django - 我的第一个 django 应用程序 - 如何导入模板?

我正在 django 3.1.1 中创建我的第一个 django 应用程序。有旧 django 版本的视频教程,但它们并不总是有效......我想为 home 和 about 部分创建 HTML 页面。我已经写了一些 HTML 文件,但是

不想工作。我添加我的文件树供您查看文件的结构。

这就是我得到的错误信息:

Django 还要求我将我的模板放在名为模板的主要 django 安装目录之一中,据我所知,如果我这样做,我将无法将我的应用程序发送给其他人(这就是我打算做的完成后用它)。我使用我的 RemoveBigFile/RemoveBigFile views.py 将 django 指向 HTML 模板。

编辑:根据要求,我从 settings.py 添加我的模板定义

如我所见,DIRS 中没有任何内容。我应该将模板的路径放在 DIRS 括号中吗?

我还有一个问题 - 在 manage.py 所在的文件夹或 settings.py 所在的文件夹中有模板更好吗?

0 投票
0 回答
52 浏览

django - Django - 使用现代中间件,我应该使用 process_view 吗?

我正在使用 Django 3.1 将一些中间件迁移到新的 Django 代码库。我显然在使用MIDDLEWARE而不是MIDDLEWARE_CLASSES.

我看到process_view仍然支持。但我不明白为什么我会使用它。它是否直接使用标准中间件添加任何内容get_response

在这个流程中什么时候会process_view调用它?

0 投票
1 回答
52 浏览

django - Django 3.1:访问 ModelChoiceField 模板中的对象

使用 Django 3.1,我正在努力完成一项基本任务。

我有一个这样的字段的表单:

在我看来,我想这样做:

但这不起作用。如何访问每个选项的对象属性?不会那么难吧?我真的需要设置数据属性,否则我只会使用{{space}}.

0 投票
1 回答
97 浏览

django - 从原始 django SQL 查询中获取文件 URL

我有两个模型

在 ListView 中,我需要为它查询一篇文章和一张图片,所以我最终编写了一个原始查询。我现在遇到的是 url 字段是 Django 尝试从我的应用程序加载的简单路径字符串,而不是 MEDIA_URL ,如果通过 ORM 加载对象,MEDIA_URL 否则会起作用。

有没有办法使用 Django 语法将该路径转换为模板中的 URL?

0 投票
5 回答
2829 浏览

python - 在 Django 3.1 中管理静态文件

Django 3.1 更新和设置文件有一些变化,因为import os已经被删除了。我在 Django 3.1 上创建了一个新项目,并参考了管理静态文件的官方文档。我也从 StackOverflow 尝试过这个解决方案,但对我来说没有用。

我的项目结构:

本地.py:

检查元素中的控制台输出: