ruby-on-rails – 默认情况下Rails如何污染活动记录列?

ruby-on-rails – 默认情况下Rails如何污染活动记录列?,第1张

概述关于Rails魔术的问题: 我在玩IRB并受到污染?方法,然后我只是做了以下: >> User.first.attributes.collect { |column, value| [column, value.tainted?] }=> [["phone", true], ["state", false], ["persistence_token", true], ["last_login_i 关于Rails魔术的问题:

我在玩IRB并受到污染?方法,然后我只是做了以下:

>> User.first.attributes.collect { |column,value| [column,value.tainted?] }=> [["phone",true],["state",false],["persistence_token",["last_login_ip",["country",["login_count",["last_request_at",["ID",["forname",["current_login_at",["name",true]]

有谁知道为什么有些参数被污染了,有些则没有?如果有办法选择哪个列应该被污染?

编辑:

谢谢你的回答.

@sgtFloyd:我刚刚尝试手动更新国家/地区.这是正在发生的事情:

>> u = User.first>> u.country = "USA"=> "USA">> u.country.tainted?=> false>> u.save=> true>> u.country.tainted?=> false>> u.reload>> u.country.tainted?=> true>> u.country.class=> String # it's also string in the database

编辑2:

我删除了User模型中的所有内容,并且一些String列没有出现污点,而有些则…

非常感谢!

解决方法 污染和污染?是Ruby的Object类的方法.如果您想在Rails应用程序中查找已修改的对象,您可能正在寻找更改?

@customer.email = '[email protected]'do_something if @customer.email_changed?
总结

以上是内存溢出为你收集整理的ruby-on-rails – 默认情况下Rails如何污染活动记录列?全部内容,希望文章能够帮你解决ruby-on-rails – 默认情况下Rails如何污染活动记录列?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/1289594.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-09
下一篇 2022-06-09

发表评论

登录后才能评论

评论列表(0条)

保存