我无法将文件保存到用户上传文件时登录的正确用户名。使用laravel5存储用户文件
我有这样的语法:
$file->move('../UserFolders/{[username}]/photos/', $name);
所以会发生什么是laravel创建一个文件夹,名为:
的
{[用户名]]而不是指向登录用户名我无法将文件保存到用户上传文件时登录的正确用户名。使用laravel5存储用户文件
我有这样的语法:
$file->move('../UserFolders/{[username}]/photos/', $name);
所以会发生什么是laravel创建一个文件夹,名为:
的
{[用户名]]而不是指向登录用户名因为你的语法你应该这样做是错误的
$file->move('../UserFolders/'.$username.'/photos/', $name);
因为你在做t他在你的控制器中因此只能用$来访问变量,并且你必须将它与字符串连接起来
你的语法可能不正确。
$file->move('../UserFolders/{[username}]/photos/', $name);
^^
`-- here
你打开一个大括号,打开方括号,然后关闭大括号。尝试嵌套他们为{[username]}
(我假设{[]}是一些Laravel魔法,通过move()
解码):
$file->move('../UserFolders/{[username]}/photos/', $name);
,或者$username
是在局部范围内确实可用,只需
$file->move("../UserFolders/{$username}/photos/", $name);
(如果一个文件夹'{[username]}'被创建,那么就没有这样的Laravel魔法了,你应该检查文档)。
请记住,的代码将不会被评估如果你把它放在单引号。你需要把它们放在双引号:
$file->move("../UserFolders/{Auth::user()->name}/photos/", $name);
或
$folderName = Auth::user()->name;
$file->move("../UserFolders/{$folderName}/photos/", $name);
感谢您的回答,最后一个解决方案效果很好,但我仍然对该视图有问题,当我点击该图片的列表时,链接不会反映会话的实际用户名。 – Mark
这将是另一个问题的问题。如果不查看代码或者知道*链接*没有反映出* *,我想冒险说您需要将图片的所有者存储在某处并显示该值 - * not *'Auth :: user() - > name是当前*会话所有者 - 在链接中。但我只是在猜测,而且我可能是错的。在一个不完全不相关的说明中,我能否提出一些问题技巧提示,让你感兴趣? – LSerni
好吧..你可以看看这个链接中的代码:http://pastebin.com/U1t6CJj7 – Mark
谢谢您的回答,不过,laravel正在创建一个文件夹,名为:{{名}}任何想法 – Mark
编辑我的答案,你确定{{$ username}}是一个有效的变量,如果你试图访问当前登录用户的名字,然后使用{{Auth :: user() - > name}},那么用户名将存储在该变量中。 –
,它创建了一个名称为{{$ username}}的文件夹,我尝试了{{Auth :: user() - > name}}和{{Auth :: user() - > username}},但仍然没有任何东西 – Mark