django - 将项目附加到 wagtail 中的流场
问题描述
我有一个正在工作的流场,并且有数据,我为此编写的代码看起来像:
class NewYearBlock(blocks.StructBlock):
year = blocks.IntegerBlock(verbose_name="Year (the year this data is rolling into)")
holidayRollover = blocks.FloatBlock(verbose_name="How many hours are rolling over")
overtimeRollover = blocks.FloatBlock(verbose_name="How many hours are rolling over")
class Meta:
icon = 'user'
和
newyearStream = StreamField([
('newyear', NewYearBlock()),
], blank=True)
我想做的是通过一些代码将一个项目附加到这个流场,我知道如何用下面的项目替换这个项目(有效)
employeeModel.newyearStream = newyearStream
employeeModel.save()
但这取代了已经存在的东西。
然后我想我可以遍历现有的流,然后创建一个新对象来保存,但是当我尝试这样做时,我收到TypeError: cannot unpack non-iterable StreamChild object
了,所以我查看了类型,发现它是<class 'wagtail.core.blocks.stream_block.StreamValue'>
任何人都可以帮助我指出正确的方向,以循环遍历流并获取我的结果,或者以更好的方式附加到我的 streamField。
谢谢你的时间帮助,丹
解决方案
推荐阅读
- java - Spring Security 不允许通过 https 访问
- sql - 如何让这个结果在列中显示
- python - Matplotlib 3d plot:在 2 个表面上获取单个颜色图
- tapestry - 在 Apache Tapestry 中从旧 URL 重定向到新 URL
- javascript - 在javascript中的数组内过滤对象内的数组
- python - 带有 upsert = true 的 Mongodb replace_one() 引发重复键错误
- javascript - 如何转义字符并同时将变量放入 Json - Javascript
- azure - 如何在 Azure 中打开虚拟机(经典)上的所有端口
- electron - Electron:webview 上的冒泡事件
- php - “ps -ef”在 php 脚本与命令行中运行时返回不同的结果