Django:添加之前检查对象是否已经存在

2024-02-24

如何检查对象是否已存在,并仅在存在时添加它not已经存在?

这是代码 - 如果 follow_role 已经存在,我不想在数据库中添加两次。我首先要如何检查?也许可以使用 get() - 但是如果 get() 没有返回任何内容,Django 会抱怨吗?

current_user = request.user
follow_role = UserToUserRole(from_user=current_user, to_user=user, role='follow')
follow_role.save()

在模型管理器上有一个名为“get_or_create”的辅助函数:

role, created = UserToUserRole.objects.get_or_create(
    from_user=current_user, to_user=user, role='follow')

它返回一个 (model, bool) 元组,其中“model”是您感兴趣的对象,“bool”告诉您是否必须创建它。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Django:添加之前检查对象是否已经存在 的相关文章

随机推荐

  • 滑动即可更改视图

    下面的代码容易写吗 我有一个表格视图 当用户选择一个单元格时 会加载详细视图 我希望允许用户通过向左和向右滑动来导航代表表格视图中项目的项目 详细视图 其工作方式与例如iPhone 的主屏幕 例如 滑动时 一页移出屏幕 然后出现下一页 我已
  • 解析 Boost program_options 中配置文件的未注册选项?

    使用命令行选项 我可以执行以下操作 po variables map vm auto parsedOptions po command line parser argc argv options optionsDescription1 al
  • 导入 React、{Component} 而不仅仅是 React 有什么好处?

    写作的最大好处是什么 import React Component from react class Link extends Component 代替 import React from react class Link extends
  • 在 Linux Mint 17.3 上安装 python 3.5

    我对 Linux 很陌生 想使用 python 因为它是我在学校学习的语言 我在网上查了一下我当前的版本是 2 7 这对我来说没有好处 因为我正在学习 python 3 但是 我听说更改系统 python 版本可能会非常糟糕 所以我不知道该
  • 如何与 UIActivityViewController 共享文本文件

    我尝试共享文件内容的 NSData 对象 活动视图中出现邮件选项 然后显示邮件撰写控制器 但没有附件 我尝试过与文件路径共享 NSUrl 但在这种情况下 当活动视图出现时 它会占据整个屏幕 但除了底部的 取消 按钮之外 它是空白的 诡异的
  • 使用 Ansible 停止可能不存在的服务

    我正在使用 Ansible2 6 1 我试图确保某些服务没有在目标主机上运行 问题是该服务可能在某些主机上根本不存在 如果是这种情况 Ansible 将因缺少服务而失败并出现错误 服务由Systemd 使用服务模块 name Stop se
  • 如何将 PDF 转换为文本,以便可以使用 PHP 解析该文本?

    我的 PDF 大多是简单格式的文本 我想用 PHP 解析文本 我意识到 PDF 是二进制的 因此我需要一个实用程序或库将其转换为文本 有什么建议吗 第三方软件可以转储PDF文件的文本内容 例如 xdoc2txt 仅限 Windows 在 W
  • 如何在 Angular 5 中实现无限滚动分页?

    我需要在 Angular 5 中实现无限滚动分页 我尝试过无限滚动 但它无法正常工作 我需要显示前 10 条帖子及其评论 滚动后这 10 条评论需要再次调用服务 10 条帖子 并将数据附加到现有帖子中 您可以使用ngx 无限滚动 npm i
  • 方法指针转换

    我正在为教育目的编写一个代表类 但遇到了一个小问题 委托不仅必须能够调用函数 还必须能够调用对象的成员方法 这意味着我需要存储指向方法的指针 void classname methodPtr 我需要存储指向不同类和不同参数列表的方法的指针
  • 未找到以下 ICU 库: -- i18n(必需)

    我必须构建 miktex 源代码 我从 github 安装源代码 他们给了我构建它的链接 https miktex org howto build mac https miktex org howto build mac 我按照链接中给出的
  • FancyBox 根本不工作

    我在运行 fancybox 时遇到问题 我也在运行其他一些 jquery 以下是正在运行的脚本
  • 使用 Tortoise SVN 跨 SVN 存储库移动目录

    如果两个目录都在同一个 SVN 存储库中 如何将子目录从一个目录移动到另一个目录 我正在使用乌龟SVN 选择要移动的文件夹 文件 然后右键单击它们并将它们拖动到要移动的位置 菜单将出现一个选项 SVN 将版本控制文件移至此处 正如所澄清的p
  • Android - 使用 jarsigner 签署我的 apk 时出错

    我制作了一个这样的密钥文件 C Users Alex gt keytool genkey v keystore alexkey keystore alias alexkey keyalg RSA keysize 2048 validity
  • 使用 MVEL 有什么优势?

    我正在学习jBPM引擎 我注意到它在流程设计中默认使用MVEL方言 那么问题来了 使用MVEL代替纯Java有什么优势呢 如果我开始用 Java 编写更复杂的流程 是否会遇到麻烦 jBPM 文档写道 请注意 MVEL 接受任何有效的 Jav
  • 如何将订单项自定义字段值从机会传递到销售订单?

    我在机会产品选项卡中有一个自定义行号字段 供客户对所选产品重新排序 并且网格按自定义字段值排序 我试图将机会的价值传递给也具有类似字段的销售订单 我尝试过以下代码但它不起作用 PXGraph InstanceCreated AddHandl
  • 通过 skimage.io.imread 读取的图像形状可疑

    我正在尝试使用 skimage io imread 读取 RGB 图像 但看完图片后发现图片形状不对 print img shape 表明 图像形状是 2 显示问题的完整代码是 from skimage import io img io i
  • 如何从 Pandas 数据框中删除行列表?

    我有一个数据框 df gt gt gt df sales discount net sales cogs STK ID RPT Date 600141 20060331 2 709 NaN 2 709 2 245 20060630 6 59
  • 同一函数的模板化版本和非模板化版本是否被视为重载?

    一个非常正式的问题 这被认为是过载吗 删除模板与仅重载参数有根本不同吗 template
  • 为客户端付费专区处理 isAccessibleForFree

    试图理解Google 付费内容指南 https developers google com search docs data types paywalled content 我的网站是这样工作的 没有付费订阅的用户每周将获得几次免费阅读 有
  • Django:添加之前检查对象是否已经存在

    如何检查对象是否已存在 并仅在存在时添加它not已经存在 这是代码 如果 follow role 已经存在 我不想在数据库中添加两次 我首先要如何检查 也许可以使用 get 但是如果 get 没有返回任何内容 Django 会抱怨吗 cur