多部分调查 - 如何在Laravel 4.0中制作?

时间:2014-07-17 12:46:34

标签: php checkbox input laravel views

我目前正在忙于一个应该这样工作的应用程序:

我们有几个学生想要参加某个科目的额外课程。所以我提出了他们可以采取的11个主题的观点。从历史,生物,地理等方面变化,他们可以选择自己喜欢的东西。因此,在选择了几个科目之后,我想把他们带到他们选择的第一个科目,之后是第二个,第三个科目等(他们通过复选框选择科目)

我知道如果学生没有登录,我必须使用cookie。如果学生需要登录则需要一个会话。所以,我选择了一个登录页面。如何查看学生选择的视图(按顺序)?我把它放在控制器里吗?我使用输入法吗?或者在routes.php文件中设置函数?我想有一些这样的:

If checkboxvalue='checked'=>'subject'
{
    then show View('subject');
} 

这几乎就像是一个多部分的调查,其中以下观点在很大程度上取决于您在之前的视图中选择的内容

如何在Laravel中制作它?提前感谢任何提示/建议/链接。我真的需要一些帮助

1 个答案:

答案 0 :(得分:0)

将值存储在会话中。

  1. 用户转到指向控制器方法的路由:CourseController::getCourses()。此方法使用表单&一堆复选框。

  2. 用户通过选中复选框&来填写他们的课程选择。提交。此请求将路由到postCourses()方法。

  3. postCourses()方法构建课程列表,将其保存在会话中,并重定向到列表中第一门课程的页面(例如getChem100())。想象一下,你有一个这样的列表:$courses = array("chem100", "psyc100")

  4. getChem100()方法呈现视图。该视图包含一个“下一步”按钮,用于将表单数据(无论他们为Chem 100课程输入的内容)发布到postChem100()

  5. postChem100()方法会对数据执行任何操作,并重定向到列表中的下一个课程(在本例中为getPsyc100())。

  6. 依此类推,直到收集到所有数据......

  7. 这是非常小的示例,有很多方法可以改进。例如,如果以这样的方式构建数据,即只有一个getCourseInfo()方法,一个视图模板和一个postCourseInfo()方法,则可以避免大量重复代码。这些方法将课程ID作为参数。这种优化将取决于您的数据结构,超出了本答案的范围。