小编Jam*_*ong的帖子

Git push不会做任何事情(一切都是最新的)

我正在尝试更新GitHub上的Git存储库.我做了一些更改,添加了它们,然后尝试做了一个git push.回复告诉我一切都是最新的,但显然不是.

git remote show origin
Run Code Online (Sandbox Code Playgroud)

用我期望的存储库响应.

为什么当存在在存储库中看不到的本​​地提交时,Git告诉我存储库是最新的?

  [searchgraph]  git status
# On branch develop
# Untracked files:
#   (use "git add <file>..." to include in what will be committed)
#
#       Capfile
#       config/deploy.rb
nothing added to commit but untracked files present (use "git add" to track)

  [searchgraph]  git add .

  [searchgraph]  git status
# On branch develop
# Changes to be committed:
#   (use "git reset HEAD <file>..." to unstage)
#
#       new file:   Capfile
# …
Run Code Online (Sandbox Code Playgroud)

git dvcs

95
推荐指数
6
解决办法
14万
查看次数

在Javascript onClick事件中传递参数

我正在尝试在onclick事件中传递一个参数.以下是示例代码:

<div id="div"></div>

<script language="javascript" type="text/javascript">
   var div = document.getElementById('div');

   for (var i = 0; i < 10; i++) {
       var link = document.createElement('a');
       link.setAttribute('href', '#');
       link.innerHTML = i + '';
       link.onclick=  function() { onClickLink(i+'');};
       div.appendChild(link);
       div.appendChild(document.createElement('BR'));
       }

   function onClickLink(text) {
       alert('Link ' + text + ' clicked');
       return false;
       }
    </script>
Run Code Online (Sandbox Code Playgroud)

但是,每当我点击任何链接时,警报总会显示"Link 10 clicked"!

谁能告诉我我做错了什么?

谢谢

javascript closures

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

模拟python类的任何实例上的方法

我想在生产代码中模拟某些类的任何实例上的方法,以便于测试.Python中有没有可以促进这个的库?

基本上,我想要执行以下操作,但在Python中(以下代码是Ruby,使用Mocha库):

  def test_stubbing_an_instance_method_on_all_instances_of_a_class
    Product.any_instance.stubs(:name).returns('stubbed_name')
    assert_equal 'stubbed_name', SomeClassThatUsesProduct.get_new_product_name
  end
Run Code Online (Sandbox Code Playgroud)

从上面要注意的重要一点是我需要在类级别上模拟它,因为我实际上需要在我正在测试的事物创建的实例上模拟方法.

使用案例:

我有一个类QueryMaker在一个实例上调用一个方法RemoteAPI.我想模拟出RemoteAPI.get_data_from_remote_server返回一些常量的方法.如何在测试中执行此操作,而无需在RemoteAPI代码中放置特殊情况以检查其运行的环境.

我想要的实例:

# a.py
class A(object):
    def foo(self):
        return "A's foo"

# b.py
from a import A

class B(object):
    def bar(self):
        x = A()
        return x.foo()

# test.py
from a import A
from b import B

def new_foo(self):
    return "New foo"

A.foo = new_foo

y = B()
if y.bar() == "New foo":
    print "Success!"
Run Code Online (Sandbox Code Playgroud)

python testing mocking

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

部分Flash消息(Rails 3)

我有部分, _flash.html.haml

- flash.each do |type, value|
  .flash{ :class => type.to_s }
    = value 
Run Code Online (Sandbox Code Playgroud)

我正在使用的视图渲染

=render :partial => "flash"

哪个抱怨flash哈希值为nil/undefined.但是,当我这样做时:

=render :partial => "flash", :locals => {:flash => flash}

有用.

为什么部分不能访问flash消息?

ruby-on-rails-3

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

在Javascript eval中跟踪错误的源代码行

我正在异步构建包含javascripts的东西,这是有效的,但是我正在寻求改进错误检测(所以所有的错误似乎都不是来自AJAX调用附近的一些线路,它们将它们拉下来.

如果我使用eval来评估多行javascript文件,有没有办法跟踪哪一行发生错误?

通过在包含时保持对我需要的变量的引用,我没有问题确定错误发生在哪个文件中.我的问题是确定错误发生在哪一.

例:

try {
  eval("var valid_statement = 7; \n invalid_statement())))");
} catch(e) {
  var err = new Error();
  err.message = 'Error in Evald Script: ' + e.message;
  err.lineNumber = ???
  throw err;
}
Run Code Online (Sandbox Code Playgroud)

如何判断错误发生在第二行?具体来说,我有兴趣在Firefox中这样做.

我知道错误对象e.stack在Mozilla浏览器中有,但输出似乎没有正确考虑换行.

javascript error-handling eval

17
推荐指数
2
解决办法
9071
查看次数

在Javascript中区分数组和"哈希"

为了使我的一个函数的语法更好,我需要能够判断一个特定的参数是一个数组还是"哈希"(我知道它只是对象).

Typeof不起作用,因为它们都返回相同的东西

typeof {foo:"bar"} // Object

typeof ["foo","bar"] // Object

那么我如何区分这两者呢?

我知道这有效,但我希望有更好的方法

({foo:"bar"}).constructor // Object()

(["foo","bar"]).constructor // [ undefined ]

编辑 啊,似乎[firebug中的[undefined]与Array是一样的.有点奇怪.

javascript

14
推荐指数
2
解决办法
2355
查看次数

Rails,在将文件上传到服务器时获取文件名

我在Rails 3中使用了一个AJAX上传器,还有paper_clip,并在这里上传文件:

  def upload

    @photo = Photo.create({ :photo => params[:file], :title =>  params[:filename]  })

    respond_to do |format|
      format.json
    end
  end
Run Code Online (Sandbox Code Playgroud)

我想将照片的标题设置为照片的文件名,但不知道如何,即使params [:file]确实有文件并且正在上传到S3.

有任何想法吗?

谢谢

ruby-on-rails paperclip ruby-on-rails-3

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

Javascript可以自举吗?

Javascript会迅速上升并适应各种各样的事情,我的问题是:Javascript可以自助吗?更具体地说,用JS编写的JS解析器是否足够快以至于有用?

在决定是否引导语言时,有哪些设计决策?

在看到这个之后出现这个问题:http://www.skulpt.org/ - 一个完全在浏览器中使用Javascript运行的python实现.

javascript bootstrapping

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

Chrome开发者工具中的奇怪的console.log行为

可能重复:
Chrome的JavaScript控制台是否懒于评估数组?

打开Chrome开发者工具并输入:

var a = [];console.log(a);a.push(1);console.log(a);

你会期望这会输出类似的东西

[]
[1]
Run Code Online (Sandbox Code Playgroud)

但相反,它输出

[1]
[1]
Run Code Online (Sandbox Code Playgroud)

行为是相同的

var a = [];console.log(a);a[0] = 1;console.log(a);

谁能解释这种行为?

在OS X上运行Chrome.在32位Windows 7上运行相同的行为.

编辑:无论语句是否在同一行,行为都是相同的.我只是将它们放在一行上,以便于测试.

var a = [];
console.log(a);
a.push(1);
console.log(a);
Run Code Online (Sandbox Code Playgroud)

在一个文件然后运行它会产生相同的行为.

编辑x 2如果您不想制作要测试的文件, 请参阅:http://jsfiddle.net/9N4A6/.

javascript google-chrome

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

当其他值未使用时从元组中提取a值

我有一个元组foo,其中包含我不关心的东西和我做的事情.

foo = (something_i_dont_need, something_i_need)
Run Code Online (Sandbox Code Playgroud)

使用起来更正确吗?

_, x = foo
Run Code Online (Sandbox Code Playgroud)

要么

x = foo[1]
Run Code Online (Sandbox Code Playgroud)

我唯一能想到的是不同的行为,如果foo不是长度为2.我认为这是相当具体的案例,但这是事实上的pythonic做事方式之一吗?

python

11
推荐指数
2
解决办法
3万
查看次数