Questions tagged «strong-parameters»

5
如何允许具有强参数的数组
我有一个运行正常的Rails 3应用程序,它使用has_many:through关联,但不是,因为我将其重新制作为Rails 4应用程序,让我从Rails 4版本中的关联模型中保存了ID。 这是三个相关模型,对于两个版本而言是相同的。 分类 class Categorization < ActiveRecord::Base belongs_to :question belongs_to :category end Question.rb has_many :categorizations has_many :categories, through: :categorizations Category.rb has_many :categorizations has_many :questions, through: :categorizations 在这两个应用程序中,类别ID都被传递到像这样的create操作中 "question"=>{"question_content"=>"How do you spell car?", "question_details"=>"blah ", "category_ids"=>["", "2"], 在Rails 3应用程序中,当我创建一个新问题时,它会插入问题表,然后再插入分类表 SQL (82.1ms) INSERT INTO "questions" ("accepted_answer_id", "city", "created_at", "details", …

4
Rails 4-强参数-嵌套对象
我有一个非常简单的问题。但是到目前为止还没有找到解决方案。 因此,这是我发送到服务器的JSON字符串: { "name" : "abc", "groundtruth" : { "type" : "Point", "coordinates" : [ 2.4, 6 ] } } 使用新的许可方法,我得到了: params.require(:measurement).permit(:name, :groundtruth) 这不会引发任何错误,但是创建的数据库条目包含null而不是groundtruth值。 如果我刚设置: params.require(:measurement).permit! 一切都按预期方式保存,但这当然会破坏强大参数所提供的安全性。 我找到了解决方案,如何允许使用数组,但没有一个使用嵌套对象的示例。这一定是有可能的,因为它应该是一个非常普通的用例。那么它是怎样工作的?


4
Rails 4:将属性插入参数
在Rails 3中,可以将属性插入到参数中,如下所示: params[:post][:user_id] = current_user.id 我正在尝试在Rails 4中做类似的事情,但是没有运气: post_params[:user_id] = current_user.id . . . . private def post_params params.require(:post).permit(:user_id) end Rails忽略了这种插入。它不会引发任何错误,只是会自动失败。
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.