2014-10-07 33 views
0

我一直在寻找和问问周围,但我找不到我要找的东西,或任何类似的东西。Laravel Cookies

我正在寻找一种方式来传递用户的某些设置。 我在后端有一个用户可以缩小或保持宽度的菜单。标准菜单很宽。如果用户决定使用窄菜单并转到另一页,菜单将“重置”为默认的宽状态。我想与用户一起传递这个“设置”。

我知道我必须做一个饼干。但还有什么?不知道。

!重要!我不寻找直接的答案(这不会教我什么)我正在寻找建议如何做到这一点,如果可能的话附加一个网站包含一些解释。

就像我说的,我知道如何做一个饼干,但我不知道如何将它附加到任何东西。

+0

不要过于苛刻,但一个简单的看一下Laravel的文档会帮助你......这是一个相当简单的任务:http://laravel.com/docs/ 4.2 /请求#cookies – 2014-10-07 12:07:02

+0

@YasenSlavov,这是我以前做过的。但对我而言还不清楚。由于我的cookie值可能有2个不同的值,因此如何将此可选值传递给cookie值。 – Jeroen 2014-10-07 12:08:48

回答

1

使用Cookie的最佳选择是使用queue方法,因为cookie会自动添加到响应中。

您可以为一个用户创建多个Cookie,但不能添加可选/不同的值。

如果用户更改菜单狭窄,您应该保存的cookie,例如1值,如果他想菜单宽再次,你可以删除Cookie或设置它的价值为2

每次你加载页面,你应该检查是否有一个选定名称的cookie,如果它的值是1或不同。

+0

现在有道理@MarcinNabiałek!感谢您的意见,我会玩弄它。但如何“保存”一个cookie? :/ – Jeroen 2014-10-07 12:21:49

+0

@Jeroen你不想工作的解决方案,所以你应该看看http://laravel.com/docs/4.2/requests#cookies,正如我所说的选择'队列'方法来保存cookie – 2014-10-07 12:24:00

+0

哦!抱歉@MarcinNabiałek!我的意思是不同的,我的意思是:你的意思是保存。我知道我不想要一个工作解决方案,只是没有正确的说法:) – Jeroen 2014-10-07 12:27:20

1

Laravel饼干使用

$cookie = Cookie::make('name', 'value', 60); 
$response = Response::make('Hello World'); 

return $response->withCookie($cookie); 

or 

$cookie = Cookie::make('name', 'value', 60); 
$view = View::make('categories.list'); 

return Response::make($view)->withCookie($cookie); 

or 

$cookie = Cookie::make('name', 'value', 60); 

return Redirect::route('home')->withCookie($cookie);