我正在使用Zend Framework开展一个小型营销项目,该项目的后台目前由两个控制器组成:一个活动控制器和一个minisite控制器。 用户使用表单创建广告系列,然后他必须创建一个带有与此广告系列相关联的第二个表单的minisite,因此我需要在保存minisite的数据时获取广告系列和用户ID。
最佳做法是什么?为什么?我应该在会话对象中传递这些变量吗?或者我应该通过以下路线传递这些变量:
/backoffice/minisite/create/:userid/:campaign/
编辑:创建广告系列时会记录和验证用户
答案 0 :(得分:1)
假设用户必须登录才能执行此操作,您可以以Zend_Auth
身份
如果没有,您可以将数据存储在Zend_Session
的正常会话变量中,或者重定向到路径。任何一种选择都是好的,所以你可以选择最适合你和你的应用的选项。
答案 1 :(得分:1)
要在两个控制器之间传递信息,最好的方法是使用session来全局存储值。 : - )
答案 2 :(得分:0)
我会按照你的建议使用路线选项。使用会话最终将很难进行测试,调试,扩展等等。
答案 3 :(得分:0)
我很确定用户需要有一个帐户来执行这些操作。如果是,那么广告系列和迷你网将以某种方式与它们相关联。我会从某种形式的数据库中存储和检索这些东西。
如果您没有经过身份验证的用户,并且您真的只需要将两个变量传递给另一个操作,请使用url参数,但要注意用户可能会弄乱它们并且可能发生许多意外情况。存储在会话中更难以这种方式进行操作。
因此,如果不涉及身份验证且网站是公共的,请使用会话,否则不要使用存储。