如何在 Rails 中将资产文件夹设置为私有?
我正在使用 Paperclip 让用户将照片上传到我的应用程序。然后,我将照片保存在 /public/photos
中。现在,我希望这些照片仅供某些用户访问。我该如何设置这个权限系统?
I'm using Paperclip for letting users upload photos to my app. Then, I'm saving the photos in /public/photos
. Now, I want the photos being accessible just for some users. How can I set this permission system up?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
务必将照片移出
public/
,然后您可以在控制器操作中使用send_file
来显示照片。我简单浏览了一下这篇博文,看起来不错:
http:// harrylove.org/2008/12/22/protected-file-downloads-with-ruby-on-rails-and-paperclip.html
Definitely move the photos out of
public/
, then you can usesend_file
in a controller action to display the photos instead.I briefly skimmed over this blog post, it looked pretty good:
http://harrylove.org/2008/12/22/protected-file-downloads-with-ruby-on-rails-and-paperclip.html
首先,我建议不要将照片保存到公共文件夹中,而是保存到应用程序目录之外的其他文件夹中。
其次,您可以将您的照片模型归属于“某些”用户。不确定您的描述中的“一些”是什么。但从那时起,您可以在控制器中仅从当前用户应该看到的照片模型中提取照片。
First, I would recommend not saving your photos to your public folder, but rather some other folder even outside of your app directory.
Second, you can attribute your Photo model to belong_to 'some' users. Not sure what 'some' is in your description. But from then, you can in your controller, only pull photos from the Photo model that your current_user should see.