对表单集中的每个表单进行重复查询

2024-03-04

在我的 Django 应用程序中,我的用户可以拥有多个职位。即:Position 模型有 User 模型的外键。通过使用 djangomodelformset_factory我输出与当前登录用户关联的所有位置,如下所示:

视图.py:

class ABCUpdate(View):

    def get(self, request):
        user = request.user
        PositionFormSet = modelformset_factory(Position)
        formset = PositionFormSet(queryset=user.position_set.all().prefetch_related('symbol'))
        return render(request,
                      'some_template.html',
                      {'formset': formset})

一些_模板.html

<form action="#" method="post">
  {% csrf_token %}
  {{ formset.management_form }}
  {% for position in formset %}
    <div class="row">
      {{ position }}
    </div>
  {% endfor %}
  <button type="submit">
    Update
  </button>
</form>

职位模型:

class Position(models.Model):

    user = models.ForeignKey(settings.AUTH_USER_MODEL)
    symbol = models.OneToOneField(Symbol)
    # more fields...

上的字段之一some_template.html is the symbol字段(即:我正在使用的字段prefetch_related在上面的片段中)。Symbol来自使用外键的不同模型。这意味着在 html 模板上,symbol字段是一个下拉列表,允许用户选择所需的符号。

这一切都工作正常,但问题是正在查询数据库以查找表单集中的每个表单以检索列表symbol的。例如,如果用户有 10 个仓位,则每个仓位都会有一个交易品种下拉列表,...这会导致单独的数据库查询来检索所有交易品种。

我该如何对所有可用的数据进行一次查询symbol并将其用于表单集中每个表单的下拉列表?


我认为您应该指出 prefetch_lated 模型位置的所有字段,这些字段具有指向另一个模型的链接,在您的情况下,您必须添加字段用户:PositionFormSet(queryset=user.position_set.all().prefetch_related('symbol', 'user')).


附:它对我有用。

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

对表单集中的每个表单进行重复查询 的相关文章

  • 计算温度的偏导数(温度的水平平流)

    我想知道哪种方法计算x和y方向温度的偏导数 温度的水平平流 最正确 第二个代码使用温度 纬向风和经向风的数据矩阵 提取温度 T 纬向风分量 u 和经向风分量 v 的数据 import matplotlib pyplot as plt imp
  • 如何在 Linux 中显示进程状态(阻塞、非阻塞)

    有没有办法查询 Linux 进程表中进程的状态 以便能够演示执行查询时进程是正在运行还是被阻止 我的目标是从进程或程序的 外部 执行此操作 因为我希望从操作系统进程的角度来理解这一点 但欢迎任何想法 这是Python代码阻塞的过程 impo
  • Python 可以使用单独的媒体播放器打开 mp3 文件吗? [关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 是否可以开一个mp3Python 中的文件 可以使用Popen 我并不是要在程序中运行它 我的意思是作为媒体播放器中的一个单独窗口或其
  • Python MySQL 模块

    我正在开发一个需要与 MySQL 数据库交互的 Web 应用程序 但我似乎找不到任何真正适合 Python 的模块 我特别寻找快速模块 能够处理数十万个连接 和查询 所有这些都在短时间内完成 而不会对速度产生重大影响 我想我的答案将是游戏领
  • numpy 数组最快的保存和加载选项

    我有一个生成二维的脚本numpy数组与dtype float和形状的顺序 1e3 1e6 现在我正在使用np save and np load对数组执行 IO 操作 然而 这些函数对于每个数组都需要几秒钟的时间 是否有更快的方法来保存和加载
  • 使用 Django 发出 HTTP 请求并反序列化输出

    因此 我对整个 Web 开发几乎完全陌生 但已经投入到一个使用 Django 从 Web 服务中提取和解析数据的副项目中 并且即使在查看 Django 时 我也很难准确地理解事情是如何工作的 文档 在 Django 中 我已经完成了所有设置
  • Python变量赋值问题

    a b 0 1 while b lt 50 print b a b b a b 输出 1 2 4 8 16 32 wheras a b 0 1 while b lt 50 print b a b b a b 输出 正确的斐波那契数列 1 1
  • 字母表中的加密和解密 - Python GCSE

    我目前正在尝试为学校编写一个程序 以便加密和解密输入的消息 我需要加密或解密的消息仅在字母表中 没有其他符号或密钥 例如 使用消息车加密输入的偏移量为 5 我希望它输出 afs 有人可以帮忙吗 这是我目前的代码 def find offse
  • 按字段名称对命名元组列表进行排序的 Pythonic 方法

    我想对命名元组列表进行排序 而不必记住字段名的索引 我的解决方案看起来相当尴尬 希望有人能有一个更优雅的解决方案 from operator import itemgetter from collections import namedtu
  • Cython:为什么 size_t 比 int 快?

    更改某些 Cython 变量的类型int输入size t可以显着减少某些功能的时间 30 但我不明白为什么 例如 cimport numpy as cnp import numpy as np def sum int cnp int64 t
  • 使用factoryboy将字段保存为JSON

    我正在尝试创建模型的一个实例 其中一个字段是JSONField 通过创建模型实例时factoryboy 我想将该字段保存为测试数据库中的 JSONField 简单地将字段传递为JSON 它被存储在Unicode数据类型 我被困在这个问题上
  • 如何替换被测模块的文件访问引用

    pyfakefs https code google com p pyfakefs 听起来非常有用 它 最初是作为核心 Python 模块的一个适度的假实现来开发的 以支持中等复杂的文件系统交互 并于 2006 年 9 月在 Google
  • Python unittest - 与assertRaises相反?

    我想编写一个测试来确定在给定情况下不会引发异常 测试是否有异常很简单is上调 sInvalidPath AlwaysSuppliesAnInvalidPath self assertRaises PathIsNotAValidOne MyO
  • 在Python中引用不带换行符的长字符串

    我正在尝试在 Python 中编写一个长字符串 该字符串显示为 OptParser 选项的帮助项 在我的源代码 py 文件中 我想放置换行符 以便我的代码不会花费新行 但是 我不希望这些换行符影响代码运行时该字符串的显示方式 例如 我想写
  • 收到的标签值 1 超出了 [0, 1) 的有效范围 - Python、Keras

    我正在使用具有张量流背景的 keras 开发一个简单的 cnn 分类器 def cnnKeras training data training labels test data test labels n dim print Initiat
  • Beautiful Soup 获取动态表数据

    我有以下代码 url https www basketball reference com leagues NBA 2017 standings html all expanded standings html urlopen url so
  • 从 sublime_plugin.WindowCommand 获取当前文件名

    我开发插件sublime text 3 并想要获取当前打开的文件路径 absolute1 self window view file name 在哪里self is sublime plugin WindowCommand 但失败了 Att
  • 安排 Asyncio 任务每 X 秒执行一次?

    我正在尝试创建一个 python 不和谐机器人 它将每隔 X 秒检查一次活跃会员 并根据会员的在线时间奖励积分 我正在使用 asyncio 来处理聊天命令 这一切都正常 我的问题是找到一种方法来安排每隔 X 秒异步检查一次活动成员 我已经阅
  • 使用 Pandas 和 Group By 绘制堆叠直方图

    我正在使用如下所示的数据集 Gender Height Width Male 23 4 4 4 Female 45 4 4 5 我想可视化高度和宽度的堆叠直方图 我希望每个图有两个堆叠的直方图 每个性别一个 这是文档中的堆叠直方图 如果存在
  • python pandas如何在多个条件下过滤字符串

    我有以下数据框 import pandas as pd data 5Star FiveStar five star fiv estar data pd DataFrame data columns columnName 当我尝试用一 种条件

随机推荐

  • 从java中删除文件夹[重复]

    这个问题在这里已经有答案了 在Java中 我想删除包含文件和文件夹的文件夹中存在的所有内容 public void startDeleting String path List
  • VS2012 ProjectTypeGuids 安装 ASP.NET 和 Web Tools 2013.1 后打开时丢失

    我已经在 Visual Studio 2012 中安装了 ASP NET 和 Web Tools 2013 1 我有一个解决方案 其中有一个 ASP NET MVC 4 项目 具有以下项目类型指南
  • Spark:如何通过mapInPandas正确转换数据帧

    我正在尝试通过最新的 Spark 3 0 1 函数转换具有 10k 行的 Spark 数据框地图熊猫 https spark apache org docs latest sql pyspark pandas with arrow html
  • 如何在 Rust 中连接静态字符串

    我正在尝试连接静态字符串和字符串文字来构建另一个静态字符串 以下是我能想到的最好的方法 但它不起作用 const DESCRIPTION static str my program const VERSION static str env
  • 将两个 div 粘贴到另一个 div 上

    这就是我想要实现的目标 我有3个div 我们称它们为左中和右 中心 div 的宽度是动态的 它可以是 100px 200px 等 具体取决于中心 div 所保存的图像 如何做到无论中心 div 大小如何 左侧和右侧 div 都粘在中心 di
  • 使用 Javascript/JQuery/Rails 3 动态添加新行

    我正在构建一个时间表表单 其中包含一个日历 使用户能够选择指定的日期并搜索项目 我有这个功能 我基本上拥有的是这样的 一旦用户搜索他们的项目并按加号按钮 即指定的项目 在本例中是 Asda 用户然后单击加号图标 这将创建一个新行并将其放入
  • Android 上的多选 ListPreference

    关于在 Android 上实现多选 复选框 ListPreference 有什么想法吗 我必须扩展 ListPreference 吗 是否已经记录了任何类来执行此操作 Thanks 多选 ListPreference 现在从 API 级别
  • 在 Rails 中实现“无尽页面”的最佳方法?

    分页太烂了 用户应该能够永远向下滚动 在适当的时候自动拉入新内容 有一个体面的导轨铸造 http railscasts com episodes 114 endless page关于这一点 但 Ryan 承认他的解决方案在 IE 中不起作用
  • 无法访问 xamarin 表单项目中的已处置对象异常

    我正在开发 Xamarin Forms 表单版本 2 3 4 231 项目 该应用程序在 iOS 中运行良好 而在 Android 中则随机崩溃 从崩溃日志来看 这似乎是内部崩溃 但我不知道从哪里开始 我知道应用程序中没有足够的信息 但有人
  • 我可以获取视图中当前控制器的名称吗?

    有没有办法从视图中找出当前控制器是什么 举个例子说明为什么我想知道这一点 如果多个控制器共享相同的布局 我可能在布局 ERB 文件中包含一部分 我想在其中突出显示基于控制器的当前页面的菜单项 也许这是一个糟糕的方法 如果是这样 更优选的方法
  • Cloud Firestore Swift:如何删除文档查询

    我想删除我的用户名集合中包含 UID 字段作为当前用户 ID 的所有文档 到目前为止 这是我的代码 let uid Auth auth currentUser uid db collection Usernames whereField U
  • 如何在 Sphinx 文档中将成员注释为抽象?

    以下两个属性定义在 Sphinx 中显示完全相同autodocHTML 输出 property def concrete self This is the concrete docstring pass abstractproperty d
  • cURL NTLM 代理授权

    我已经使用curl有一段时间了 它工作正常 但是使用用户 域 用户名 来验证curl的代理无法请求授权 授权方式为NTLM 该代码位于批处理文件中 Code curl proxy ntlm proxy user proxy PROXY UR
  • 在定义函数之前调用函数(前向引用扩展了变量的定义)

    考虑这个基本的 Scala 示例代码 object Test def main args Array String inner var x Int 5 def inner println x x 尝试编译它会产生以下错误消息 test sc
  • Access 中的 ConcatRelated(),使用两个键

    我找到了 ConcatRelated 函数 http allenbrowne com func concat html 它似乎做了我想要的事情 但我需要输入两个键而不是一个 我的数据如下所示 Chain Store Warehouse Wa
  • 从相机捕获的iphone图像自动旋转Swift

    通过编程方式 我在应用程序中从相机捕获了图像 它已经很好地获取了 但是当我转移到另一个时 查看并忽略那个视图 当时我的图像我想旋转为风景 我用相机拍摄了图像 当我从照片库获取图像时 没有发现问题 下图是我的原图 截屏 https i sta
  • 如何将数据从一个 BigTable 表复制到另一个 BigTable 表

    我正在尝试将数据从一个 Bigtable 表复制到另一个 Bigtable 表 但没有找到任何直接的方法来执行此操作 可以选择将数据从 Bigtable 表复制到 Google Storage 然后从存储文件复制回 Bigtable 但这需
  • API方法排序:Swagger版本3.0.2

    我在用招摇版本3 0 2 http swagger io swagger ui 我也关注了这个答案 https stackoverflow com a 32345035 3006390但对方法顺序没有影响 window onload fun
  • 在 Spark 数据框中创建 StructType 的空列

    我需要将 StructType 的空列添加到现有的 DataFrame 中 尝试以下 df df withColumn features typedLit StructType Nil And df df withColumn featur
  • 对表单集中的每个表单进行重复查询

    在我的 Django 应用程序中 我的用户可以拥有多个职位 即 Position 模型有 User 模型的外键 通过使用 djangomodelformset factory我输出与当前登录用户关联的所有位置 如下所示 视图 py clas