如何将初始数据从QuerySet传递到formset?

路易斯·席尔瓦

我正在开发一个财产管理系统,现在我正在开发一个名为“财产检查”的应用程序,该应用程序基本上可以保存有关对某些财产进行检查的信息。

一位很有帮助的用户告诉我,可以使用表单集来实现。我正在尝试使用我的模型TaskCheck创建一个表单集。每个TaskCheck都有一个属于一个属性的特定Task。这就是我创建的:

views.py

def add_taskcheck(request, property_pk, pk):
    tasks = Task.objects.filter(property=property_pk)
    tasks_list = Task.objects.filter(property=property_pk).values('task')
    TaskCheckFormset = formset_factory(TaskCheckForm, extra=0)
    if request.method == 'POST':
        #do something
    else:
        formset = TaskCheckFormset(initial=task_list)

    context = {
        'title':"Add Property Check",
        'task':tasks,
        'reference':property_pk,
        'formset':formset,
    }
    return render(request, 'propertycheck/add-taskcheck.html', context)

我的表格如下所示:

TaskCheck表格 在这种情况下,任务“ Sofas:检查”不属于实例属性,因此它不应该存在于该实例属性中,并且应将Task字段预先填充为初始数据。

据我在这里所读到的内容我应该将初始数据作为字典列表传递。因此,我使用.values()创建了“ tasks_list”,并尝试将其作为初始值传递:

tasks_list = Task.objects.filter(property=property_pk).values('task')
formset = TaskCheckFormset(initial=task_list)

所以我的问题是:

如何使用queryset任务预填充这些字段?

如何将行数限制为queryset任务对象的数目?

首先,我需要过滤属于特定属性的Task对象。

我已经尝试过使用Model表单集,但是无法传递初始数据。我也阅读了这个问题,但是无法在表单中启动它。

我的models.py:

class Task(models.Model):
    task = models.CharField(max_length=100)
    category = models.ForeignKey(Categories)
    property = models.ManyToManyField(Property)

class TaskCheck(models.Model):
    status = models.CharField(choices=STATUS_CHOICES, default='nd', max_length=50)
    image = models.ImageField(upload_to='task_check', blank=True, null=True)
    notes = models.TextField(max_length=500, blank=True)
    task = models.ForeignKey(Task)
    property_check = models.ForeignKey(Propertycheck)
Dirkgroten

如果你有pk一个Property,第一获取实际的对象:

property = get_object_or_404(Property, pk=property_pk)

然后创建所有相关TaskCheck对象的查询集:

qs = TaskCheck.objects.filter(task__property=property).distinct()

最后,您可以使用以下代码初始化模型表单集qs

TaskCheckFormset = modelformset_factory(TaskCheck, form=TaskCheckForm, fields=('status', 'notes'))
formset = TaskCheckFormset(request.POST, queryset=qs)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何将数据传递到OnActivateAsync()以初始化我的有状态演员?

来自分类Dev

如何将数据从viewcontroller传递到tabbarcontroller到navaigationcontroller?

来自分类Dev

如何将数据从表格传递到路由器

来自分类Dev

您如何将数据从Objective C传递到Swift?

来自分类Dev

如何将数据从父页面传递到弹出窗口?

来自分类Dev

如何将数据传递到导航抽屉项?

来自分类Dev

如何将数据从Swift传递到JavaScript?

来自分类Dev

如何将iframe数据传递到父窗口

来自分类Dev

如何将数据从casperJS传递到nodeJS?

来自分类Dev

如何将数据从PHP传递到Node?

来自分类Dev

如何将数据从服务高频传递到活动

来自分类Dev

如何将数据从内容脚本传递到页面级?

来自分类Dev

如何将数据从指令传递到html模板-AngularJS

来自分类Dev

如何将JSON数据传递到AngularJS指令

来自分类Dev

如何将数据从控制器传递到dompdf?

来自分类Dev

如何将数据从父视图传递到子视图?

来自分类Dev

如何将数据从AngularJS前端传递到Nodejs后端?

来自分类Dev

如何将数据从JavaScript传递到Django?

来自分类Dev

如何将数据从python传递到php?

来自分类Dev

如何将模型数据从局部视图传递到JavaScript?

来自分类Dev

如何将数据从Parse传递到UITableView?

来自分类Dev

如何将数据从NSWindowController传递到其NSViewController?

来自分类Dev

如何将json数据传递到highcharts系列?

来自分类Dev

如何将数据传递到Signalr集线器类

来自分类Dev

如何将图像从数据库传递到javascript?

来自分类Dev

如何将数据从Java传递到FXML?

来自分类Dev

如何将数据传递到视图Rails

来自分类Dev

AEM-如何将数据传递到组件

来自分类Dev

如何将数据传递到ng-Container

Related 相关文章

  1. 1

    如何将数据传递到OnActivateAsync()以初始化我的有状态演员?

  2. 2

    如何将数据从viewcontroller传递到tabbarcontroller到navaigationcontroller?

  3. 3

    如何将数据从表格传递到路由器

  4. 4

    您如何将数据从Objective C传递到Swift?

  5. 5

    如何将数据从父页面传递到弹出窗口?

  6. 6

    如何将数据传递到导航抽屉项?

  7. 7

    如何将数据从Swift传递到JavaScript?

  8. 8

    如何将iframe数据传递到父窗口

  9. 9

    如何将数据从casperJS传递到nodeJS?

  10. 10

    如何将数据从PHP传递到Node?

  11. 11

    如何将数据从服务高频传递到活动

  12. 12

    如何将数据从内容脚本传递到页面级?

  13. 13

    如何将数据从指令传递到html模板-AngularJS

  14. 14

    如何将JSON数据传递到AngularJS指令

  15. 15

    如何将数据从控制器传递到dompdf?

  16. 16

    如何将数据从父视图传递到子视图?

  17. 17

    如何将数据从AngularJS前端传递到Nodejs后端?

  18. 18

    如何将数据从JavaScript传递到Django?

  19. 19

    如何将数据从python传递到php?

  20. 20

    如何将模型数据从局部视图传递到JavaScript?

  21. 21

    如何将数据从Parse传递到UITableView?

  22. 22

    如何将数据从NSWindowController传递到其NSViewController?

  23. 23

    如何将json数据传递到highcharts系列?

  24. 24

    如何将数据传递到Signalr集线器类

  25. 25

    如何将图像从数据库传递到javascript?

  26. 26

    如何将数据从Java传递到FXML?

  27. 27

    如何将数据传递到视图Rails

  28. 28

    AEM-如何将数据传递到组件

  29. 29

    如何将数据传递到ng-Container

热门标签

归档