CAKEPHP 3-在几种形式/动作上建立实体



这是一个设计问题。

我正在尝试在cakephp3中构建预订系统。

我以前从没做过这样的事情。

我认为最好的方法可能是 - 正如帖子标题所建议的那样 - 建立一个实体,以几种形式/动作。

选择位置 ->输入客户详细信息 ->输入特殊要求 ->查看全部详细信息并付费

因此,这些阶段中的每个阶段都成为我的预订控制器中的一个动作。每个操作的视图将其内容提交给链中的下一个操作,我将补丁实体与请求数据一起使用,然后将结果发送到新操作的视图。

我开始怀疑这是否是做到这一点的好方法。一个重要的问题是,来自以前操作的每个操作的数据必须存储在隐藏字段中,以便可以将当前动作中的新数据重新提交。

我希望以前动作的数据仅以读取方式可见,因此我使用了我传递给视图的实体来填充HTML表。这很好,效果很好,但是必须在隐藏字段中存储相同的数据并不是一个很好的方法。

我希望这有意义!

无论如何,我以为我会在这里发布一些设计指导,因为我觉得有一种更好的方法可以做到这一点。我考虑过在数据库中创建临时记录,只是通过ID,但我希望我不必这样做。

这里的任何建议都将不胜感激。

欢呼。

我只会将实体存储在数据库中,然后继续使用其他视图,从数据库中获取数据。伪:

    public function chooseLocation() {
        $ent = new Entitiy();
        patchEntity($ent,$this->request->data);
        if save entity {
            redirect to enterCustomerDetails($ent[id]);
        }
    }
   public function enterCustomerDetails($id) {
     $ent = $this->Modelname->get($id);
     // patch, save, redirect again ...
  }

最新更新