小编tam*_*are的帖子

Python:从比较两个绝对路径获取相对路径

说,我有两条绝对路径.我需要检查其中一条路径引用的位置是否是另一条路径的后代.如果是真的,我需要找出祖先的后代的相对路径.在Python中实现这个的好方法是什么?我可以从中受益的任何图书馆?

python

133
推荐指数
4
解决办法
8万
查看次数

以编程方式触发"选择文件"对话框

我有一个隐藏的文件输入元素.是否可以从按钮的单击事件触发其选择文件对话框?

html javascript jquery

92
推荐指数
5
解决办法
10万
查看次数

在javascript中定义另一个函数内的函数

function foo(a) {
    if (/*some condition*/) {
        // perform task 1
        // perform task 3
    }
    else {
        // perform task 2
        // perform task 3
    }
}
Run Code Online (Sandbox Code Playgroud)

我有一个功能,其结构类似于上面的.我想将任务3抽象为一个函数,bar()但是我希望将此函数的访问权限限制在范围内foo(a).

为了达到我想要的目的,改为以下是否正确?

function foo(a) {
    function bar() {
        // perform task 3
    }

    if (/*some condition*/) {
        // perform task 1
        bar();
    }
    else {
        // perform task 2
        bar();
    }
}
Run Code Online (Sandbox Code Playgroud)

如果以上是正确的,bar()每次foo(a)调用时都会重新定义吗?(担心这里浪费cpu资源)

javascript

73
推荐指数
4
解决办法
6万
查看次数

$ HOME和'〜'之间的区别(代字号)?

我一直认为$HOME并且~完全相同,因此可以互换使用.今天,当我尝试安装pylibmc,一个python绑定到memcached,在我的共享服务器上使用时~给了我错误但没有 $HOME.我想说明原因.

libmemcachedpylibmc的要求.我在我的主目录下安装了libmemcached,因为我在服务器上没有root.因此,要安装pylibmc,我需要确保安装脚本知道在哪里可以找到libmemcached.

执行时python setup.py install --with-libmemcached=~,安装脚本会运行

gcc -pthread -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall \
  -Wstrict-prototypes -fPIC -DUSE_ZLIB -I~/include \
  -I/usr/local/include/python2.7 -c _pylibmcmodule.c \
  -o build/temp.linux-i686-2.7/_pylibmcmodule.o -fno-strict-aliasing

这给出了无法找到libmemcached的错误.

如果我改为--with-libmemcached=$HOME,则脚本运行

gcc -pthread -fno-strict-aliasing -g -O2 -DNDEBUG -g -fwrapv -O3 -Wall \
  -Wstrict-prototypes -fPIC -DUSE_ZLIB -I/home/waterbotte/include \
  -I/usr/local/include/python2.7 -c _pylibmcmodule.c \
  -o build/temp.linux-i686-2.7/_pylibmcmodule.o -fno-strict-aliasing

没有任何问题.看起来问题是波形符没有得到解决.但为什么?

linux bash centos

60
推荐指数
4
解决办法
2万
查看次数

mixin的顺序如何影响派生类?

说,我有以下mixin通过触摸相互重叠dispatch():

class FooMixin(object):
    def dispatch(self, *args, **kwargs):
        # perform check A
        ...
        return super(FooMixin, self).dispatch(*args, **kwargs)

class BarMixin(object):
    def dispatch(self, *args, **kwargs):
        # perform check B
        ...
        return super(FooMixin, self).dispatch(*args, **kwargs)
Run Code Online (Sandbox Code Playgroud)

如果我希望我的视图通过订单,请检查A - >检查B,如果我的代码是MyView(FooMixin, BarMixin, View)或者MyView(BarMixin, FooMixin, View)

为什么我们总是View在mixins之后放入或者它的子类?(我从阅读django通用视图的源代码中注意到了这一点,但我不知道它背后的基本原理,如果有的话)

python django django-views method-resolution-order django-class-based-views

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

资源被解释为Document但在Chrome Developer Tools中使用MIME类型application/json警告进行传输

我有以下代码片段,它使用jQuery Form插件将表单发布到服务器(在ajax中).

  var options = {
    dataType: "json",
    success: function(data) { 
      alert("success");
    } 
  }; 

  $form.ajaxSubmit(options);
Run Code Online (Sandbox Code Playgroud)

表格:

<form enctype="multipart/form-data" id="name_change_form" method="post" action="/my_account/"> 
<div style='display:none'><input type='hidden' name='csrfmiddlewaretoken' value='6c9b552aaba88b8442077e2957e69303' /></div> 
  <table> 
    <tr> 
      <td> 
        <label for="id_first_name">First name</label>:
      </td> 
      <td> 
        <input name="first_name" value="Patrick" maxlength="30" type="text" id="id_first_name" size="30" /> 
      </td> 
    </tr> 
    <tr> 
      <td> 
        <label for="id_last_name">Last name</label>:
      </td> 
      <td> 
        <input name="last_name" value="Sung" maxlength="30" type="text" id="id_last_name" size="30" /> 
      </td> 
    </tr> 
  </table> 
  <input type="hidden" name="form_id" value="name_change_form" /> 
</form> 
Run Code Online (Sandbox Code Playgroud)

ajax实现工作正常.但是我收到了警告

资源解释为Document但使用MIME类型application/json进行传输

在Chrome开发者工具中.我想找出为什么警告,甚至更好的解决方法.

我改为使用$.post而且神奇地从那时起错误就消失了.我不知道为什么$.post有效,但不是$form.ajaxSubmit.如果有人可以提供他们的解释,这将是伟大的.至少,这个问题已得到解决.以下是新代码.

var …
Run Code Online (Sandbox Code Playgroud)

jquery jquery-forms-plugin google-chrome-devtools

42
推荐指数
4
解决办法
9万
查看次数

使用ngRepeat =>不可编辑的输入将输入绑定到基元数组

这是我的问题的演示.

$scope.myNumbers = [10, 20, 30];

<div ng-repeat="num in myNumbers">
    <input type="text" ng-model="num">
    <div>current scope: {{num}}</div>
</div>
Run Code Online (Sandbox Code Playgroud)

任何人都可以向我解释为什么输入不可编辑/只读?如果按照设计,背后的理由是什么?

更新2/20/2014

看起来这不再是v1.2.0 + Demo的问题.但请记住,虽然用户控件现在可以使用较新的angularJS版本进行编辑,但它是子范围中num属性,而不是父范围,可以进行修改.换句话说,修改用户控件中的值不会影响数组.myNumbers

angularjs angularjs-scope angularjs-ng-repeat

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

为django模型编写测试用例

在我目前的项目中途,在经历了无数分钟调试的痛苦之后,我决定采用TDD.首先,我计划为每个现有模型编写一组单元测试.但对于只定义属性的模型(即没有其他方法/属性),我不确定我需要测试什么,也不确定.

class Product(models.Model):
    name = models.CharField(max_length=50)
    description = models.TextField(default='', blank=True)
    retails = models.ManyToManyField(Retail, verbose_name='Retail stores that carry the product')
    manufacturer = models.ForeignKey(Manufacturer, related_name='products')
    date_created = models.DateTimeField(auto_now_add=True)
    date_modified = models.DateTimeField(auto_now=True)
Run Code Online (Sandbox Code Playgroud)

产品为例,单元测试应涵盖哪些内容?应该如何涵盖ForeignKeyManyToManyField

python django django-models django-testing

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

指令定义对象的"要求"是什么?

require - 要求将另一个控制器传递给当前指令链接函数.require需要传入指令控制器的名称.如果找不到这样的控制器,则会引发错误.该名称可以带有以下前缀:

  • ? - 不要提出错误.这使得require依赖项可选.
  • ^ - 在父元素上查找控制器.

以上是官方文档的定义.这里的模糊性恰恰是"指令控制器".

angularjs-ui bootstrap项目中tabs指令为例.

angular.module('ui.bootstrap.tabs', [])
.controller('TabsController', ['$scope', '$element', function($scope, $element) {
  ... // omitted for simplicity
}])
.directive('tabs', function() {
  return {
    restrict: 'EA',
    transclude: true,
    scope: {},
    controller: 'TabsController',
    templateUrl: 'template/tabs/tabs.html',
    replace: true
  };
})
.directive('pane', ['$parse', function($parse) {
  return {
    require: '^tabs',
    restrict: 'EA',
    transclude: true,
    scope:{
      heading:'@'
    },
    link: function(scope, element, attrs, tabsCtrl) {
      ... // omitted for simplicity
    },
    templateUrl: 'template/tabs/pane.html',
    replace: true …
Run Code Online (Sandbox Code Playgroud)

angularjs angularjs-directive

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

获取django app的绝对路径

我正在编写一个单元测试,需要访问我放在我的django app目录下的"fixtures"目录中的图像文件.我想在我的测试中使用相对路径打开这个图像文件,这需要我获取django应用程序的绝对路径.有没有办法获得django应用程序的绝对路径?

django django-settings

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