草庐IT

回调签名

全部标签

ruby-on-rails - after_save 回调将 updated_by 列设置为 current_user

我想使用after_save回调将updated_by列设置为current_user。但是current_user在模型中不可用。我应该怎么做? 最佳答案 需要在controller中处理。首先在模型上执行保存,然后如果成功则更新记录字段。例子classMyController另一种选择(我更喜欢这个)是在您的模型中创建一个自定义方法来包装逻辑。例如classRecord 关于ruby-on-rails-after_save回调将updated_by列设置为current_user,我

ruby - 有没有一种干净的方法来测试 Rspec 中的 ActiveRecord 回调?

假设我有以下ActiveRecord类:classToastMitten是否有一种干净的方法来测试:brush_off_crumbs是否已设置为before_save回调?我所说的“干净”是指:“没有实际保存”,因为它很慢我不需要测试ActiveRecord是否正确处理before_save指令;我需要测试我是否正确地告诉它在保存之前要做什么。“没有通过未记录的方法进行黑客攻击”我找到了满足标准#1但不满足标准#2的方法:it"shouldcallhavebrush_off_crumbsasabefore_savecallback"do#undocumentedvoodoobefore

ruby-on-rails - 查看上传到 AWS S3 的私有(private)图像 - 从 secret 访问 key 创建签名

我通过Paperclipgem在Rails应用程序上上传了一些图像,我希望只有后端的管理员能够查看这些图像。因此,我将它们设置为私有(private)。然后我四处搜索解决方案,以了解只有具有特定链接的管理员才能查看文件。这就是我found.我继续尝试这个,但我正在努力创建所需的签名。公式在上面的链接中给出,是:Signature=URL-Encode(Base64(HMAC-SHA1(YourSecretAccessKeyID,UTF-8-Encoding-Of(StringToSign))));StringToSign=HTTP-VERB+"\n"+Content-MD5+"\n"+

ruby - 使用 Fog 和 Ruby 生成预签名 URL 以将文件放入 Amazon S3

我正在使用Foggem生成预签名url。我可以成功执行此操作以获得对该文件的读取权限。这是我的做法:fog_s3=Fog::Storage.new({:provider=>'AWS',:aws_access_key_id=>key,:aws_secret_access_key=>secret})object_path='foo.wav'expiry=Date.new(2014,2,1).to_time.to_iurl=fog_s3.directories.new(:key=>bucket).files.new(:key=>object_path).url(expiry,path_sty

ruby-on-rails - 在 Active Record 回调中验证日语字符

我有一个日文项目需要验证半角和全角日文字符,半角允许14个字符,全角允许7个字符。有人知道如何实现吗?现在在我的模型上classCustomervalidates_length_of:name,:maximum=>14end不是一个好的选择我目前使用的是ror2.3.5全角和半角都可以使用 最佳答案 首先,全角(全角)和半角(半角)的概念只存在于日语中的两种字符:罗马字符(即拉丁文)片假名字符韩语韩文有类似的概念,但日语平假名和汉字没有。对于片假名,半角字符有自己的Unicode代码点,并且呈现为全角字符一半的大小,尽管它们在其他方

ruby - 使用 Ruby 为 CloudFront 创建签名 url

历史:我在Amazon上创建了一个key和pem文件。我创建了一个私有(private)存储桶我创建了一个公共(public)分配并使用原始ID连接到私有(private)存储桶:有效我创建了一个私有(private)分配并像#3一样连接它-现在我得到拒绝访问:预期我很难生成一个有效的url。我一直在尝试按照此处描述的说明进行操作:http://docs.amazonwebservices.com/AmazonCloudFront/latest/DeveloperGuide/index.html?PrivateContent.html这就是我到目前为止所得到的......虽然不起作用-

ruby-on-rails - 如何检查模型的 before_save 回调中的修改值?

如何读取Controller在before_save回调中设置的值?例子:我有一个带有url字段的模型。在保存之前,我想检查url是否已更改。如果是这样,请使用新旧网址做一些事情。这可能吗? 最佳答案 尝试这样的事情:before_save{|m|ifm.url_changed?...}另请参阅ActiveModel::Dirty上的文档 关于ruby-on-rails-如何检查模型的before_save回调中的修改值?,我们在StackOverflow上找到一个类似的问题:

ruby - 使用自签名证书

我只是想了解SSL。我已经在我的本地主机上设置了一个Jetty服务器,并使用Keytool生成了我自己的证书.现在当我去https://localhost:8443/我收到无法信任此证书错误。我用keytool-export-aliaspongus-keystorekeystore-filecertfile.cer创建我认为是客户端需要向服务器进行身份验证的证书。(这是我可能大错特错的地方!)我有以下ruby代码:require'net/https'require'openssl'require'open-uri'puts'yay'ifFile.exists?('certfile.ce

ruby-on-rails - 在 Ruby 中为 S3 Bucket 生成预签名 URL 的推荐方法

我正在尝试在我的Rails服务器上生成一个预签名的url以发送到浏览器,以便浏览器可以上传到S3。aws-sdk-s3似乎是future可以使用的gem。但不幸的是,我还没有找到可以提供清晰度的gem文档。似乎有几种不同的方法可以做到这一点,如果对以下方法的区别有任何指导,我们将不胜感激-使用Aws::S3::Presigner.new(https://github.com/aws/aws-sdk-ruby/blob/master/aws-sdk-core/lib/aws-sdk-core/s3/presigner.rb),但它似乎没有接受对象参数或身份验证凭证。使用Aws::S3::

ruby - 我可以在方法签名中指定鸭子类型吗?

示例代码:#typed:trueclassKeyGettersig{params(env_var_name:String).returns(KeyGetter)}defself.from_env_var(env_var_name)returnNull.newifenv_var_name.nil?returnnew(env_var_name)enddefinitialize(env_var_name)@env_var_name=env_var_nameenddefto_key"keyfrom#{@env_var_name}"enddefto_s"strfrom#{@env_var_nam