在Rails 4中更新模型

Fribu-智能解决方案

我是Rails的新手,我已经通过模型@user构建了一个表单

这是我的用户控制器

def me
@user = User.find_by_id(current_user.id)

if !params.empty?
  @user.update_attributes params[:user]
end
end

但是我得到这个错误:

ActiveModel :: ForbiddenAttributesError

这是我的模型:

class User < ActiveRecord::Base
  # Include default devise modules. Others available are:
  # :confirmable, :lockable, :timeoutable and :omniauthable
  devise :database_authenticatable, :registerable,
         :recoverable, :rememberable, :trackable, :validatable

  private

  def user_params
    params.require(:user).permit(:name, :surname, :email, :phone, :mobile)
  end
end

我试图在此处定义“更新”方法,但出现如下错误:

ActiveModel :: ForbiddenAttributesError

任何的想法?

里奇维斯

好的,这里有几件事

您的更新方法应如下所示

def me
  @user = current_user.find_by(params[:Id])

end

您需要在控制器中具有允许的参数,然后将:Id添加到这些参数中

看起来您正在使用devise,您将需要使自己的用户控制器从devises控制器继承,以便您可以覆盖允许的Params

参阅devise文档,了解如何以非常简单的方式覆盖控制器

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Rails防止更新模型中的某些值

来自分类Dev

在Rails中定期更新模型(时间间隔)

来自分类Dev

Rails 4. jQuery,Acts_as_list,嵌套模型,更新控制器中的位置

来自分类Dev

更新Rails 4中用于设计用户模型的自定义字段

来自分类Dev

Rails 4. jQuery,Acts_as_list,嵌套模型,更新控制器中的位置

来自分类Dev

Rails ActiveRecord模型未在RSpec模型规范中更新

来自分类Dev

Rails ActiveRecord模型未在RSpec模型规范中更新

来自分类Dev

在Rails4中创建mongodb模型

来自分类Dev

Rails4:模型中的可选参数

来自分类Dev

在 Rails 4 中覆盖现有模型

来自分类Dev

Rails 4:使用AJAX调用更新模型属性

来自分类Dev

模型更新时出现Rails4:ForbiddenAttributesError

来自分类Dev

Rails 4 Seeds.rb更新关联模型

来自分类Dev

Rails 4中的Ajax请求更新值

来自分类Dev

嵌套表未在Rails 4中更新

来自分类Dev

Rails 4中的Ajax无法更新内容

来自分类Dev

Rails-在创建时更新模型中的布尔属性

来自分类Dev

最终用户更新Rails ActiveRecord模型中的枚举

来自分类Dev

Ruby on Rails跳过模型中特定方法的更新回调

来自分类Dev

Rails更新方法中的相关模型数据

来自分类Dev

如何更新 Rails 中的所有关联模型?

来自分类Dev

验证Rails 4中不在模型中的URL参数

来自分类Dev

Ruby on Rails模型中的<<

来自分类Dev

Rails模型中的自用

来自分类Dev

在Rails中缓存模型

来自分类Dev

Rails 4:在子路径中组织Rails模型而不使用命名空间模型吗?

来自分类Dev

Rails 4 has_many通过:从父模型编辑视图更新联接模型

来自分类Dev

rails 3.2模型转换为rails 4

来自分类Dev

Rails 4 + Postgres =模型时间戳中缺少毫秒

Related 相关文章

热门标签

归档