我目前正在忙于一个应该这样工作的应用程序:
我们有几个学生想要参加某个科目的额外课程。所以我提出了他们可以采取的11个主题的观点。从历史,生物,地理等方面变化,他们可以选择自己喜欢的东西。因此,在选择了几个科目之后,我想把他们带到他们选择的第一个科目,之后是第二个,第三个科目等(他们通过复选框选择科目)
我知道如果学生没有登录,我必须使用cookie。如果学生需要登录则需要一个会话。所以,我选择了一个登录页面。如何查看学生选择的视图(按顺序)?我把它放在控制器里吗?我使用输入法吗?或者在routes.php文件中设置函数?我想有一些这样的:
If checkboxvalue='checked'=>'subject'
{
then show View('subject');
}
这几乎就像是一个多部分的调查,其中以下观点在很大程度上取决于您在之前的视图中选择的内容
如何在Laravel中制作它?提前感谢任何提示/建议/链接。我真的需要一些帮助
答案 0 :(得分:0)
将值存储在会话中。
用户转到指向控制器方法的路由:CourseController::getCourses()
。此方法使用表单&一堆复选框。
用户通过选中复选框&来填写他们的课程选择。提交。此请求将路由到postCourses()
方法。
postCourses()
方法构建课程列表,将其保存在会话中,并重定向到列表中第一门课程的页面(例如getChem100()
)。想象一下,你有一个这样的列表:$courses = array("chem100", "psyc100")
。
getChem100()
方法呈现视图。该视图包含一个“下一步”按钮,用于将表单数据(无论他们为Chem 100课程输入的内容)发布到postChem100()
。
postChem100()
方法会对数据执行任何操作,并重定向到列表中的下一个课程(在本例中为getPsyc100()
)。
依此类推,直到收集到所有数据......
这是非常小的示例,有很多方法可以改进。例如,如果以这样的方式构建数据,即只有一个getCourseInfo()
方法,一个视图模板和一个postCourseInfo()
方法,则可以避免大量重复代码。这些方法将课程ID作为参数。这种优化将取决于您的数据结构,超出了本答案的范围。