小编med*_*zid的帖子

当我们在里面调用'super'时,为什么方法不返回最后一个语句?

方法的返回值是其最后一个语句的值.这意味着Myclass.new下面的initialize方法定义如下super:

class Myclass < String
  def initialize(arg)
    super(arg.to_s)
    "something"
  end
end
Run Code Online (Sandbox Code Playgroud)

应该回来"something".但它返回"test":

Myclass.new("test") # => "test"
Run Code Online (Sandbox Code Playgroud)

为什么?

ruby

2
推荐指数
1
解决办法
313
查看次数

如何对所有控制器(除了具有某些操作的特定控制器)使用around_action

在我的应用程序控制器中,我使用around_action在每个控制器操作中设置时区:

class ApplicationController < ActionController::Base
     around_action :user_time_zone

     def user_time_zone(&block)
        Time.use_zone("Central America", &block)
     end
end
Run Code Online (Sandbox Code Playgroud)

但是在特定的控制器中,我不会通过某些操作应用此时区,所以我想要这样的东西:

around_action :user_time_zone, except: {controller: "foo" & action: "bar" & action: "other_action"}
Run Code Online (Sandbox Code Playgroud)

有办法吗?

ruby-on-rails

2
推荐指数
1
解决办法
1427
查看次数

同一个应用的不同子域能否防止 XSS 等恶意攻击?

在我的 Rails 应用程序中,我有 2 个子域,

一:members.myapp.com这是所有成员共享的区域(他们可以在其中登录和管理他们的帐户)

二:每个成员在这样的子域上都有自己的网站:member1.myapp.commember2.myapp.commember3.myapp.com等...

假设user1.myapp.com在其站点运行恶意js代码,members.myapp.com是否会受到XSS或其他攻击的影响?

security xss same-origin-policy

2
推荐指数
1
解决办法
1127
查看次数

使用jquery文件上传在上传之前压缩图像

正在使用jquery 文件上传插件直接上传到 s3,我试图在上传之前压缩图像,我已经尝试了该选项imageQuality: 0.8

fileInput.fileupload({

            fileInput:       fileInput,
            url:             my_url
            type:            'POST',
            paramName:        'file',
            dataType:         'XML',
            replaceFileInput: false,
            acceptFileTypes: /(\.|\/)(gif|jpe?g|png)$/i
            maxFileSize: 999000,  
            imageQuality: 0.8,

            // .....

})
Run Code Online (Sandbox Code Playgroud)

但是上传后图像大小不会被压缩

我不确定这imageQuality是正确的事情,但我也愿意接受任何其他选择:

例如:我还创建了自己的函数来压缩图像,该函数返回图像 Blob,我只是不知道如何告诉JQuery 文件上传使用该 Blob 而不是输入文件中的图像

jquery jquery-file-upload

2
推荐指数
1
解决办法
4646
查看次数

Carrierwave juste删除文件但不清除数据库列

我用来carrierewave在我的应用程序中添加用户头像

class User < ActiveRecord::Base
  mount_uploader :avatar, AvatarUploader
end
Run Code Online (Sandbox Code Playgroud)

所以,当我尝试使用remove_avatar方法删除头像时,它只删除文件但不清除数据库列的值

我在这里找到了关于同一主题的讨论:CarrierWave只删除文件,不清除列或清除上传,但它似乎是一个旧的讨论(2年前),并且可能更新carrierewave来解决这个问题.有什么想法吗?

ruby-on-rails carrierwave

1
推荐指数
1
解决办法
1392
查看次数

如何在使用ajax时自动隐藏flash消息

我使用ujs发送ajax请求,在我的destroy.js.erb文件中,我有以下代码:

$("#wrapper").prepend('<div class="flash-notice"><%= escape_javascript(flash.discard(:notice)) %></div>');
Run Code Online (Sandbox Code Playgroud)

上面的行显示使用ajax时的flash通知消息,我想要的是在延迟后自动隐藏此flash消息

($(".flash-notice").delay(600).fadeOut(300);)不起作用,因为消息是动态添加的,而不是存在于DOM中

flash ajax jquery ruby-on-rails

1
推荐指数
1
解决办法
3582
查看次数

从s3自动备份到另一台服务器或云

我正在使用s3cmd从s3备份我的文件,我从终端运行以下命令,以便在my_bucket中的文件和名为workfiles的本地文件夹之间进行同步,该文件位于主目录中

s3cmd sync s3://my_bucket/ /home/mody/workfiles/ --delete-removed
Run Code Online (Sandbox Code Playgroud)

这是一种手动方法,如果音量很大会很痛苦,所以我想知道是否可以对像digitalocean或其他云服务这样的服务器进行某种自动备份,以及如何做到这一点?任何代码片段将不胜感激!谢谢

ruby-on-rails amazon-s3 s3cmd

1
推荐指数
1
解决办法
159
查看次数

git命令删除了我的东西

我真的是github和git的初学者,我在我的github上有一些存储库,带有一些基本代码,最近我安装了一个新的操作系统备份我的应用程序代码并添加了很多东西,当我试图推动更改为github,我收到一个错误:

 [rejected]        master -> master (fetch first)
error: failed to push some refs to 'root@....git'
hint: Updates were rejected because the remote contains work that you do
hint: not have locally. This is usually caused by another repository pushing
hint: to the same ref. You may want to first integrate the remote changes
hint: (e.g., 'git pull ...') before pushing again.
hint: See the 'Note about fast-forwards' in 'git push --help' for details.
Run Code Online (Sandbox Code Playgroud)

我在线搜索并找到了我执行的命令:

git pull --rebase
Run Code Online (Sandbox Code Playgroud)

这引起了另一个问题,我搜索并找到了另一个我执行的命令

git pull …
Run Code Online (Sandbox Code Playgroud)

git github

1
推荐指数
1
解决办法
65
查看次数