Symfony 2 - Post 预算内的产品没有持久化

Symfony 2 - Post products within budget without persists

简介:

我正在开发一个预算系统,用户可以在其中添加与此预算相关的产品(每个预算的产品都是唯一的),这些产品在预算注册期间可能会发生变化,例如,假设我输入了错误的产品价格并希望更改,我单击编辑,它将允许我编辑该产品的价值,到目前为止一切顺利。

问题:

我的问题是,因为我仍然没有预算 ID,所以我不知道产品是什么意思,该产品不属于任何东西,如果您注册预算并添加一些产品,这可能是个问题和预算没存完,产品会打底,没有关系。

我需要:

我需要当你添加一个产品时,这个产品不会完全保留,就像他在交易一样,但是我可以像银行一样正常编辑它,但它只会真正保存在银行当我完成预算登记时。

观察:我正在使用 Symfony 2 和 Doctrine。

预算登记屏幕。 (静止图像,仍然无法正常工作)

1。屏幕注册预算

2。模态产品注册

3。已列入预算的产品列表

如果你还没有一个预算,你怎么能在主页上打印所有与它相关的产品呢?

这样做的一种方法是在打开 "new budget page" 时创建一个临时预算,如果它没有在特定时间范围内保存(可能在暂存 table/entity 中),它将被丢弃。这样,所有产品都将与该临时预算相关联,并且当您持久化预算时,所有持久化的产品都将与持久化对象相关联。使用此逻辑,您可以关闭网页并在随后的时间恢复该信息(前提是它尚未过期)。

另一种方法可能是在提交模态表单时不保存产品,而是将它们临时保存在某个地方(主页的隐藏字段,会话变量),以便在您按下 [=17 之前不会将任何内容保存在数据库中=] 预算按钮。这样,如果用户在没有保存的情况下关闭页面,所有数据(预算和产品)都将丢失。