RoR + Devise + Carrierwave:在上传图像之前使用密码进行身份验证

时间:2013-06-26 03:47:02

标签: ruby-on-rails ruby devise carrierwave

我正在我的网站上创建一个配置文件系统,Devise用于验证用户,Carrierwave用于上传图像。但是,当我使用Carrierwave在用户的编辑页面上传图像时,无论用户输入密码,它都会上传到帐户。

如何在上传之前要求进行身份验证?

3 个答案:

答案 0 :(得分:0)

您应该在上传控制器上使用before_filter。示例:

如果您使用user作为资源名称,请参阅以下示例before_filter

class NamesController < ApplicationController
  before_filter :authenticate_user!
  ..
  ..
end

Documentation

答案 1 :(得分:0)

请关注我:

  1. 添加您的模型

    attr_accessor :avatar_cache
    
  2. 在您的表格中请添加隐藏字段

    <%= f.hidden_field :avatar_cache %>
    
  3. 在我的情景中,我有:

    1. 模型user.rb中的coloum头像
    2. 请将avatar_cache更改为您的专栏。

答案 2 :(得分:0)

我的项目配置似乎有问题。从头开始重新启动我的项目似乎解决了这个问题。