首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >不能大规模分配受保护的元素: crop_x、crop_y、crop_w、crop_h. Devise和jCrop.Ruby on Rails

不能大规模分配受保护的元素: crop_x、crop_y、crop_w、crop_h. Devise和jCrop.Ruby on Rails
EN

Stack Overflow用户
提问于 2012-11-25 02:19:56
回答 1查看 366关注 0票数 0

我正在关注RyanBates关于使用jCrop http://railscasts.com/episodes/253-carrierwave-file-uploads裁剪用户化身的屏幕。Ryan从零开始使用身份验证系统,但我为此使用了Devise

为了将用户带到处理裁剪的crop.html.haml,我在应用程序/控制器中创建这个文件并指定

代码语言:javascript
复制
routes.rb

devise_for  :users, path_names: { sign_in: "login", sign_out: "logout" }, 
          controllers: { registrations: "registrations" }

我在registration_controller.rb中的更新操作如下所示

代码语言:javascript
复制
def update
if resource.update_with_password(resource_params)
    if params[:user][:avatar].present?
    render 'crop'
  else
    expire_session_data_after_sign_in!
    redirect_to users_path, notice: "User updated."
  end
 else
    clean_up_passwords(resource)
    flash[:notice] = flash[:notice].to_a.concat resource.errors.full_messages
    session[:subscription] = resource
  redirect_to root_path
 end

结束

当我单击导致以下错误的“裁剪”时:

代码语言:javascript
复制
ActiveModel::MassAssignmentSecurity::Error in UsersController#update

Can't mass-assign protected attributes: crop_x, crop_y, crop_w, crop_h

user.rb

代码语言:javascript
复制
attr_accessor :crop_x, :crop_y, :crop_w, :crop_h

我也试着把它放进attar_accesible,但是它不起作用

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-11-25 02:32:03

您似乎在"attar_accesible“中有两种类型的字体,尝试attr_accessible并查看它是否有效。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13547714

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档