与Laravel的向导

时间:2017-06-23 12:28:15

标签: laravel relationship laravel-5.4 wizard

我正在尝试用Laravel实现一个向导。

假设我们有三个模型:postcontactplace,它们的关系如下:

  • post <> contact:多对一
  • post <> place:多对一

现在路由(对于向导)看起来像这样:

  • /wizard:存储新的post
  • /wizard/{post}/contact:存储新联系人并设置关系
  • /wizard/{post}/place:存储新地点并设置关系

应该能够独立于向导更新这些模型中的每一个,因此我们将为每个模型及其相应的路径(例如/post/{post}/edit)设置资源控制器。

我是否有一个单独的向导控制器?如果是这样,该控制器是否会实现所有方法createstoreupdate等,即使我们已经在特定模型的每个控制器中实现了它们?

我更倾向于重定向到特定的模型控制器,但我认为那时我不得不捣乱。会话变量,用于检查是在向导中编辑模型还是“独立”。

1 个答案:

答案 0 :(得分:0)

我通过以下方式解决了我的问题:

使用contact phone等路线访问与其他模型相关的模型(例如post/{post}/comment/...,两者都与...相关) 1}}对应于CRUD操作。

每个模型完成它应该做的工作但是将始终重定向到另一个控制器(让我们称之为WizardController),它将路由到下一个控制器。它如何知道下一个是哪一个?在我的情况下,我检查是否已设置变量/引用(或null)并采取适当的措施。