抱歉,我认为我指出的项目完美地突出了这个问题。我不确定你还需要什么。冒着重蹈覆辙的风险,
在 d/base 中有几行数据,在列表页面中加载数据。这显示了一个数据表。
双击一行以产生一个具有表格的屏幕。表单由行中的数据填充。
返回列表页面。
现在点击“新建”按钮。这会产生与您在步骤 2 中单击的行相同的视图。
看到视图中的表单填充了先前渲染中的旧数据,而实际上它应该是空的,因为您想使用表单来创建新实体。
似乎正在发生的事情是第一次呈现视图(表单)(它们没有预编译吗?)它被放入缓存中。问题是表单元素(文本框等)中的任何数据似乎也被放入缓存中。因此,当您随后使用视图尝试创建新实体并希望所有字段为空时,它实际上已预先填充了旧数据。
不知道我怎么能更清楚这一点?或者单元测试有什么帮助?正如我所说,我放在网站上的项目清楚地显示了这种行为。我愿意花更多的时间在上面,但我不能等待在这里发帖和得到回复之间的长时间延迟。再说一次,我知道你和我们其他人一样很忙。如果您能回答我提出的关于 execute 方法如何填充缓存的问题,这可能会有所帮助?或者是吗?源代码不太清楚,因为它的内联文档很少,所以我花了相当多的时间逐步调试调试器等......而且我仍然不清楚一些事情。
无论如何,如果我遇到抱怨,我很抱歉,不是故意的。我敢肯定,该框架具有巨大的潜力。