草庐IT

safe_constantize

全部标签

ruby-on-rails - 为什么在引用类时会出现 "uninitialized constant"错误?

我的数据结构是这样的ControllerAPIV1Controller1.rbController2.rbSerializersModel1Serializer.rbModel2Serializer.rb我正在尝试访问我的Controller中的序列化器这是我的ControllerclassAPI::V1::Controller1这是我的序列化器classAPI::V1::Serializers::Model1Serializer我收到以下错误。为什么它认为Model1Serializer在Controller1下?未初始化的常量API::V1::Controller1::Model1

ruby - $SAFE = 4 的 ruby​​ 中可能存在哪些漏洞?

$SAFE=4的ruby​​中可能存在哪些漏洞?我马上就知道XSRF是可能的,因为攻击与“受污染的变量”无关,而是与http请求的来源有关。我知道使用像md5()这样的弱加密算法不会被识别。你知道其他人吗?非常感谢代码示例! 最佳答案 $SAFE=4时可能存在几乎无限多的漏洞。没有什么可以保护您免受您可以编写代码的所有任意坏事的影响。例如,如果您不小心,无论$SAFE模式如何,您都可以对数据库中的敏感数据做各种愚蠢的事情——对于Web应用程序,这实际上应该比$SAFE帮助您的事情更重要和。$SAFE本质上是保护你免受一件你可能做错的

ruby-on-rails - Rails Edge/4 错误 `require' : cannot load such file -- thread_safe

按照此处的说明让应用程序在RailsEdge之外运行以测试Rails4:WhatisthebestwaytogenerateaRailsappusingedge?和HowtocreateEdgerailsapplication?但是遇到这个错误:`require':cannotloadsuchfile--thread_safe(LoadError)使用命令:railsnewEdge--edge--skip-bundle--database=postgresql--skip-test-unit--skip-index-html我正在检查Railsmasterbin目录。我将rbenv与r

ruby-on-rails - rails : Uninitialized Constant inside Controller

我有一个命名空间路由,下面是我创建Controller的方式:moduleAmoduleBmoduleTestclassDummyController我正在尝试访问类Test::Dummy::Something但它会自动加载带有A和B的常量Test(A::B::Test)?我得到的错误是:NameError(uninitializedconstantA::B::Test::Dummy) 最佳答案 试试::Test::Dummy::SomethingTest在此上下文中将始终引用A::B::Test因此您需要明确说明您需要Test来自

ruby-on-rails - 给定一个字符串,判断它是否来自 .html_safe 调用?

在RubyonRails中,给定一个字符串,是否可以确定.html_safe是否存在?已经在该字符串上被调用了吗?提问的原因:我想编写一个Controller单元测试来验证html_safe没有在特定字符串上被调用,以证明当该字符串稍后被渲染到在View页面中,Rails将对字符串进行转义(避免可能的XSS漏洞)。我意识到我可以继续在我的测试中实际呈现页面,然后检查呈现的页面主体,但我想知道是否有更直接的方法来做到这一点? 最佳答案 有html_safe?:s='foo's.html_safe?#=>falses='foo'.htm

ruby - 如何修复 "uninitialized constant Context::DateTime"错误?

我在Ruby中遇到了一个未初始化的常量Context::DateTime错误。我的代码是:#PrintdataaboutalistofTweetsdefprint_timeline(tweets)tweets.eachdo|tweet|d=datetime.new(tweet['created_at'])puts"#{tweet['user']['name']},#{tweet['text']},#{d.strftime('%m.%d.%y')},#{tweet['id']}"endend我相信它是在说它找不到DateTime类,我不确定为什么。我是Ruby新手。

ruby-on-rails - 在任何来源中都找不到 safe_yaml-0.9.2

推送到heroku:----->Ruby/Railsappdetected----->UsingRubyversion:ruby-1.9.2----->InstallingdependenciesusingBundlerversion1.3.2Rubyversionchangedetected.Clearingbundlercache.Old:ruby1.9.2p290(2011-07-09revision32553)[x86_64-linux]New:ruby1.9.2p320(2012-04-20revision35421)[x86_64-linux]Running:bundlei

Ruby "CONSTANTS"似乎是不可改变的?

我知道Ruby中的“常量”按照惯例称为常量,但实际上是可变的。然而,我的印象是,当他们“变异”时,有一个警告:classZ2M=[0,1]endZ2::M#=>[0,1]Z2::M=[0,3](irb):warning:alreadyinitializedconstantZ2::M(irb):warning:previousdefinitionofMwashere但是我发现情况并非一直如此:a=Z2::Ma[1]=2Z2::M#=>[0,2]andnowarning这是“警告”系统的漏洞吗?我推断常量的赋值会重复它,但我猜这不是真的,因为常量和变量似乎指向同一个对象?这是否意味着所有所

ruby-on-rails - 现有 ID 上的 "NameError: uninitialized constant"

在我的应用程序中运行rakedb:seed时出现此错误:NameError:uninitializedconstantAdmissionEpisode::AdminDistrictId。我不知道为什么-admission_episode.admin_district_id存在于数据库中并且我在AdmissionEpisode模型中有belongs_to:admin_district。有人知道发生了什么事吗?这是AdminDistrict种子:districts.eachdo|code,name|AdminDistrict.create({code:code,name:name})end

ruby - 名称错误 : uninitialized constant MIME

这行ruby​​press代码::type=>MIME::Types.type_for(FILENAME).first.to_s,出现以下错误:NameError:uninitializedconstantMIME整个block是:FILENAME='myFile.png'wp.uploadFile(:data=>{:name=>FILENAME,:type=>MIME::Types.type_for(FILENAME).first.to_s,:bits=>XMLRPC::Base64.new(IO.read(FILENAME))})有什么问题的建议吗? 最