Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/file/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PlayFramework共享缓存问题_Playframework - Fatal编程技术网

PlayFramework共享缓存问题

PlayFramework共享缓存问题,playframework,Playframework,嗨,我正在使用routes动态创建子目录,类似这样的东西 GET /event/{nick} EventPageController.show example.com/event/congres2011 example/com/event/symposiumXI 我用它来做类似的事情 GET /event/{nick} EventPageController.show e

嗨,我正在使用routes动态创建子目录,类似这样的东西

GET     /event/{nick}                           EventPageController.show
example.com/event/congres2011
example/com/event/symposiumXI
我用它来做类似的事情

GET     /event/{nick}                           EventPageController.show
example.com/event/congres2011
example/com/event/symposiumXI
然后,我获取数据库中的第一个事件并保存在密钥缓存中

public static void show(String nick) {
        Event event = Event.find("byNick", nick).first();
        if (event == null) {
            redirect("/");
        }
        Cache.add("event", event);
        render(event);
    }

但是当我请求第二个(example/com/event/symposiumXI)时,show方法使用相同的键来保存新的请求事件,因此第一个事件丢失了上下文。请问我如何控制它?或者我可以限制在同一时间只使用一个事件…?

由于您使用的是静态键“event”,它将被替换。您可能希望通过使键类似于
nick+“event”

而不是重定向(“/”)调用Application.index();(或映射到“/”的任何内容)。在游戏中练习更好。非常感谢!,所以,如果我有这个GET/event/{nick}/form,我如何从form方法中获取{nick}?您将在form方法的(String nick)参数中获得值。查看类似于GET/event/{nick}/form/{nick}的文档,但是表单的参数应该像Post、Post/event/{nick}/form/那样发送,我可以从/event/{nick}/form/获取{nick}吗?