小编Jan*_*nak的帖子

如何从rake任务中提前返回?

我有一个rake任务,我在开始时做一些检查,如果其中一个检查失败,我想从rake任务提前返回,我不想执行任何剩余的代码.

我认为解决方案是在我希望从代码返回的地方放置一个返回但是我得到以下错误

unexpected return
Run Code Online (Sandbox Code Playgroud)

ruby rake

213
推荐指数
6
解决办法
5万
查看次数

当命令变得太长时,命令行会覆盖自己

我正在使用PuTTY登录Debian服务器.我有一个奇怪的问题,当我输入的命令太长时,它没有环绕并开始一个新行.相反,它从同一行的开头开始,并开始覆盖提示,然后是命令的开头.

该命令运行得很好,但它真的很烦人,我假设有一些设置可以解决这个问题吗?

linux debian putty

34
推荐指数
4
解决办法
3万
查看次数

如何在Ruby on Rails中更改区域偏移一段时间?

我有一个包含时间的变量foo,比如今天下午4点,但是区域偏移是错误的,即它在错误的时区.如何更改时区?

当我打印它时,我得到了

Fri Jun 26 07:00:00 UTC 2009
Run Code Online (Sandbox Code Playgroud)

所以没有偏移,我想将偏移设置为-4或东部标准时间.

我希望能够将偏移量设置为Time对象的属性,但这似乎不可用?

ruby ruby-on-rails

25
推荐指数
7
解决办法
3万
查看次数

如何在rails中的部分模板中有可选的局部变量?

我觉得在我偏爱的顶端,我会有这样的东西

<% optional_width = default_value unless (defined? optional_width) 
Run Code Online (Sandbox Code Playgroud)

但是我对此有不一致的结果,我认为这不是一个很好的方法.在rails中执行此操作的"正确"方法是什么?

ruby ruby-on-rails

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

为什么在mysql中重命名列需要这么长时间?

我有一个12 GB的表格充满了图片,我正在尝试重命名保存数据的blob列,这是永远的.有人可以通过吹嘘为什么要重命名专栏这么长时间给我一个打击?我原本以为无论表的大小如何,这个操作都会很快?

编辑:我运行的查询如下

 alter table `rails_production`.`pictures` change `data` `image_file_data` mediumblob NULL
Run Code Online (Sandbox Code Playgroud)

似乎大部分时间都花在等待mysql制作图片表的临时副本上,因为它非常大,需要一段时间才能完成.

它是要做的事情列表,将图片存储从数据库更改为文件系统.

EDIT2:Mysql Server版本:5.0.51a-24 + lenny2(Debian)

mysql

13
推荐指数
2
解决办法
5455
查看次数

如何找到解析为一个IP地址的所有域名?

最近我一直在跟踪craigslist上的垃圾邮件发送者.我最近发现他为他的武器库增加了一项新技术,他注册了一大堆域名,但他们都解析了相同的IP地址.

有没有办法获取IP地址并获取解析到该IP的所有域名列表?

dns multiple-domains

10
推荐指数
1
解决办法
3万
查看次数

有没有办法找到最近的十字路口的地址?

使用谷歌地图API有一种方法可以编程方式找到最近的交叉街道,给定一个特定的街道地址?

google-maps street-address

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

在rake任务中打印到屏幕

我有一个长期的rake任务.我不时地在屏幕上打印更新,让我知道任务的进展情况.

puts "Almost there..."
Run Code Online (Sandbox Code Playgroud)

我的问题是所有的puts语句似乎都在某处缓冲,直到任务完成后才会打印到屏幕上.此时,它们将立即打印出来.

在任务运行时是否有某种方法强制它们打印?

ruby rake ruby-on-rails

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

如何从rake任务调用控制器操作?

我有一个控制器动作,生成许多excel报告,这需要大约10分钟.有时我会从我的webapp中调用它,这就是为什么它是一个动作.

但我也想创建一个rake任务来运行它,所以我可以安排它自动运行一晚.

有什么办法吗?

rake ruby-on-rails

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

在onClick事件中更改Javascript焦点?

注意:可能的解决方案只需要在Firefox 3.0中运行,我的应用程序不允许从IE访问!=)

我有一个链接,点击后会向用户显示一个灯箱:

<a href="#" onclick="show_lightbox();return false;">show lightbox</a>
Run Code Online (Sandbox Code Playgroud)

我的问题是,当显示灯箱时,焦点仍然在链接上.因此,如果用户按下向上或向下键,它们最终会滚动主文档,而不是显示的灯箱!

我试图使用这样的代码将焦点设置到灯箱元素

function focus_on_lightbox() {
  document.getElementById('lightbox_content').focus(); 
} 
Run Code Online (Sandbox Code Playgroud)

如果我在firebug控制台中键入它,这可以正常工作,但如果我将它包含在onclick片段的末尾则无效.看起来好像我无法将焦点从onclick事件中执行的代码中的链接改变开来?


- 更新1我之前尝试过这样的事情

<a href="#" onclick="show_lightbox();focus_on_lightbox();return false;">show lightbox</a>
Run Code Online (Sandbox Code Playgroud)

我修改了函数来添加一些调试输出,如下所示

function focus_on_lightbox() {
  console.log('hihi');
  console.log(document.activeElement);
  document.getElementById('lightbox_content').focus(); 
  console.log(document.activeElement);
}
Run Code Online (Sandbox Code Playgroud)

输出如下

hihi
<a onclick="closePopup();lightbox('apartment_detail','11619');focus_on_lightbox();return false;" href="#">
<a onclick="closePopup();lightbox('apartment_detail','11619');focus_on_lightbox();return false;" href="#">
Run Code Online (Sandbox Code Playgroud)

所以在我做任何事情之前的重点是在链接上,在我试图改变焦点后它仍然保留在链接上?

不确定是否重要,但我使用ajax加载灯箱,如下所示

  new Ajax.Updater(lightbox_content_id, url, {asynchronous:true, evalScripts:true, onLoading:show_lightbox_loading(), onComplete:focus_on_lightbox() }); 
Run Code Online (Sandbox Code Playgroud)

我试图在ajax完成后设置焦点,但也没有运气.

我错过了什么?


我一直试图通过尝试设置焦点来制作下面建议的解决方案,看看我是否通过检查document.activeElement成功,如果没有,请等待100毫秒再试一次.如果我使用以下功能,它将工作

function focus_on_lightbox() {
  var seconds_waited = 0
  pause(100);
  var current_focus = document.activeElement
  while (document.getElementById(lightbox_content_id) != current_focus && seconds_waited < 2000)
  {
    document.getElementById(lightbox_content_id).focus(); 
    console.log(document.activeElement);
    pause(100);
    current_focus …
Run Code Online (Sandbox Code Playgroud)

javascript firebug prototypejs dom-events

6
推荐指数
1
解决办法
3万
查看次数