问题标签 [strong-parameters]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1515 浏览

ruby-on-rails - Rails 4强参数-更新时堆栈级别太深

我一直在玩 Rails 4,并且在使用强参数更新记录时遇到了一些问题。我不断收到“堆栈级别太深”错误。我正在尝试更新 has_one meta_data 的帖子记录。

post.rb

post_controller.rb

创建新记录没有任何问题,并保存关联的 meta_data 记录。更新给了我一个 Stack Level Too Deep 错误。当我{:meta_data_attributes => [:title, :description, :keywords, :menu_name]}从允许的参数中删除时,保存工作没有问题

任何帮助都会很棒,在此先感谢您!

0 投票
2 回答
225 浏览

ruby-on-rails - 允许 set_locale 与 strong_parameters gem & devise

我在设计的小项目上使用强参数gem

我添加User.rb了一个locale专栏。这是我的controllers/users/registrations_controller.rb文件:

这些是从表单接收的参数:

我想添加到user :locale column参数params[:locale]

我该怎么做?

谢谢!

0 投票
1 回答
212 浏览

ruby-on-rails - 声明式授权:限制特定属性的模型操作

我对 Rails 很陌生,我正在尝试设置一个授权系统,该系统允许我控制用户可以修改模型的哪些属性。

我使用 declarative_authorization 进行基于角色的授权。这已经为我提供了很多功能:根据用户的角色限制用户在视图中可以看到的内容,他可以在控制器中执行哪些操作,基本上还允许他在模型上执行哪些操作。

但是,我只是找不到关于如何根据角色限制对模型特定属性的操作的答案。

示例:允许具有 :guest 角色的用户更新用户帐户的某些属性:当他尝试使用错误密码登录时,我想更新将创建此帐户的用户帐户的特定字段不活动。但是 :guest 角色永远不能更改此用户帐户的昵称。

因此,我在我的用户模型中使用“using_access_control”方法,但这要么为帐户提供所有属性的“更新”权限,要么根本没有“更新”权限,具体取决于角色。

我知道“strong_parameters”是一个基本上可以提供此类功能的宝石,但我不知道如何将“declarative_authorization”和“strong_parameters”结合在一起,或者如何简单地使用“declarative_authorization”。

有人可以指出我的解决方案吗?

非常感谢!

0 投票
1 回答
440 浏览

ruby-on-rails - 在 rails 3.2 上的 strong_parameters 更新后如何更新嵌套对象?

我在 Rails 3.2 中使用 strong_parameters gem 已经有一段时间了。到目前为止,一切都很好。

在最近将 strong_parameters 更新到 v0.2.0 之后,我不再可以更新嵌套对象。

这是请求参数

我已经尝试过 params this 和 params that。我根本不更新嵌套对象。请帮忙

起初我认为这params.require(:resource).permti(..., :images => [])应该可以解决问题,但是失败了,然后我尝试了其他各种选择。他们都失败了。

我怎样才能允许所有这些嵌套对象。

0 投票
1 回答
6498 浏览

file-upload - 使用 Rails 4、强参数和 Carrierwave 上传文件

我正在将一个使用 Carrierwave 的应用程序移植到 Rails 4,但是我遇到了强参数的问题。我有一个模型

以下是上传图片的传递方式:

但是我似乎无法弄清楚如何编写接受的参数photos_attributes

我已经尝试过.permit(photos_attributes: []),但它只是跳过它们,当我使用 时permit!uuid它是在保存之前创建的,不会出现在 SQL 中,这是第二个问题:

这里缺少强参数的文档,我什至不知道如何进行。

更新 这适用于嵌套属性:

但看起来应该首先为 Rails 4 更新 Carrierwave 或 Nested Form。它只是试图一直保存一个空图像。相同的代码(没有 strong_params)适用于 Rails 3。

0 投票
2 回答
2013 浏览

ruby-on-rails - 不能允许参数?

这对我来说很奇怪,所以我很好奇是否有其他人遇到过这个问题:

我有以下内容:

在我的控制器创建和更新操作中,我正在使用带有上述参数调用的质量分配...

但我仍然得到Unpermitted parameters: agent_ids

如果我将其更改为params.required(:credential).permit!(即全部允许),它当然可以工作。

我觉得我必须在这里忽略一些明显的问题......有人知道它可能是什么吗?

0 投票
2 回答
7141 浏览

ruby-on-rails - Is there a way to rename Strong Parameter keys?

Lets say I had code in a controller that did not use Strong Parameters

Is it possible for me to use Strong Parameters here?

I cannot do

Because foreign_id is not a param

I cannot do

Because alias_id is not on the model.

Basically, I want to know if you can alias paramater keys when using Strong Parameters.

0 投票
1 回答
392 浏览

ruby-on-rails - 在做一个只有 api 的应用程序时设计与强参数冲突

我想用新的 gem 创建一个仅 api 的应用程序:strong_parameters。我的应用程序使用设计令牌身份验证来对用户进行身份验证。一切都很好,直到我意识到用户永远无法通过身份验证。我已经遵循了创建 api 和使用设计的所有指南。甚至在过滤器之前做了前置以获取令牌并将其分配给 auth_token 参数。每次我尝试获取数据时,我都会收到此响应“ {"error":"You need to sign in or sign up before continuing."}”,即使我在 HTTP 标头中发送用户的令牌。

我可以请求获取 auth_token 就好了,但是当我 ping 说用户控制器上的用户索引方法时,我会得到上面列出的错误。我已经像这样在 HTTP 标头中包含了身份验证令牌:headers => {"Authorization" => "Token token=#{token["auth_token"]}"}(这是在我用来测试 api 的 api 测试器类中。)

我拿出了强大的参数,现在我没有这个问题。其他人有设计和strong_parameters的api错误吗?

0 投票
1 回答
1394 浏览

ruby-on-rails - 如何在控制器规格中测试 strong_parameters?

添加 strong_parameters gem 后,我想测试我的控制器,该怎么做?我试过:

控制器

眼镜

错误

0 投票
2 回答
2543 浏览

ruby-on-rails - 如何使用 strong_parameters 允许除 user_id 之外的所有属性?

我想使用类似的东西: