小编Séb*_*rez的帖子

如何在phantomjs中等待元素可见性

用户点击此链接:

<span onclick="slow_function_that_fills_the_panel(); $('#panel').show();">
Run Code Online (Sandbox Code Playgroud)

现在我正在模拟phantomjs中的点击:

page.evaluate(
  function() { $("#panel").click(); }
);
console.log('SUCCESS');
phantom.exit();
Run Code Online (Sandbox Code Playgroud)

Phantom在慢速函数结束执行之前退出,DIV变为可见.我该如何实施等待?

javascript jquery phantomjs

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

Gulp:将参数从watch声明传递给任务

问题:我想维护文件的"集合".这将有助于构建时间和灵活性.例如,每当我编辑我的app.js文件时,我都不想重新编译我的所有twitter引导程序文件.

我当然可以通过2个任务和2个监视声明实现这一点 - 问题是除了文件数组之外,任务是相同的.理想情况下,我想在watch声明中传递这些作为参数有没有办法做类似下面的伪代码?:

var files = {
    scripts: [
        'www/assets/scripts/plugins/**/*.js', 
        'www/assets/scripts/main.js', 
    ],
    vendor: [
        'vendor/jquery/dist/jquery.js',
        'vendor/jqueryui/ui/jquery.ui.widget.js',                       
        'vendor/holderjs/holder.js'
    ],              
};
...


gulp.task('js', ['lint'], function (files, output) {
    return gulp.src(files)
        .pipe(debug())
        .pipe(concat(output))
        .pipe(uglify({outSourceMap: true}))
        .pipe(gulp.dest(targetJSDir))       
        .pipe(notify('JS minified'))
        .on('error', gutil.log) 
});

...

gulp.watch('scripts/**/*.js', ['lint', 'js'], files.scripts, 'app.min.js');
gulp.watch('vendor/**/*.js', ['lint', 'js'], files.vendor, 'vendor.min.js');
Run Code Online (Sandbox Code Playgroud)

翻转另一种方式:是命名空间调用任务的监视声明吗?这样我可以检查哪个手表触发了任务,并以任务本身为条件.

gulp

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

在python中使用absolute_import并处理相对模块名称冲突

我真的希望这是一个简单的例子,让我想念复杂的Python2导入机制.我有以下设置:

$> ls -ltr pypackage1 
total 3
-rw-r--r-- 1 pelson pelson   0 Aug 17 19:20 io.py
-rw-r--r-- 1 pelson pelson   0 Aug 17 19:20 __init__.py
-rw-r--r-- 1 pelson pelson  57 Aug 17 19:22 code.py
$> cat pypackage1/code.py 
from __future__ import absolute_import

import zipfile
Run Code Online (Sandbox Code Playgroud)

即我只是一个存根包空__init__.pyio.py和2号线code.py的文件.

我可以导入pypackage1:

$> python -c "import pypackage1.code"
Run Code Online (Sandbox Code Playgroud)

但我无法运行该code.py文件:

$> python pypackage1/code.py
Traceback (most recent call last):
  File "pypackage1/code.py", line 3, in <module>
    import zipfile
  File "python2.7/zipfile.py", line …
Run Code Online (Sandbox Code Playgroud)

python python-2.7

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

Django,DRF - 返回布尔值中的用户权限列表

我想在 Django/DRF 中实现以下目标:

实现一个端点,根据给定的用户 ID,返回其权限列表。(我的意思是模型UserPermission来自django.contrib.auth.models)。

现在,这非常简单,我可以使用下面的代码来获取这些内容:

class UserPermissions(RetrieveUpdateDestroyAPIView):
    serializer_class = PermissionSerializer

    def get(self, request, pk):
        permissions = User.objects.get(pk=pk).get_all_permissions()
        print User.objects.get(pk=pk).user_permissions
        data = {
            'permissions': permissions
        }
        serializer = PermissionSerializer(data)

        return Response(serializer.data, status=status.HTTP_200_OK)
Run Code Online (Sandbox Code Playgroud)

这是我得到的回应:

{
    "permissions": [
        "auth.add_user",
        "auth.add_group",
        "auth.add_userproxy",
        "auth.change_group",
        "auth.change_user",
        "auth.delete_permission",
        "evidence.view_all_customers"
    ]
}
Run Code Online (Sandbox Code Playgroud)

然而,这并不完全是我想要的。我想返回系统中所有权限的列表,其中包含给定用户的每个单独权限的真/假值。

当然,我尝试获取完整的权限列表,将它们与用户的权限进行比较,但这就是我偶然发现一个问题的地方:

Permission我可以从中django.contrib.auth.models获取系统中完整的权限列表的模型具有以下属性:

namecontent_typecodename。我发现这codename是我需要的属性,但有一个问题 - 它包含没有前置应用程序名称的名称(例如,只是“add_user”,而不是User.get_all_permissions().

这基本上使得两者没有可比性。有没有办法很好地做到这一点?我只想将子字符串匹配作为最后的手段,因为我认为这不是一个好的做法。

编辑:根据要求,这是一个示例:

假设系统中有以下权限:

"auth.add_user",
"auth.add_group",
"auth.add_userproxy",
"auth.change_group",
"auth.change_user",
"auth.delete_permission",
"evidence.view_all_customers"
"contenttypes.add_contenttype", …
Run Code Online (Sandbox Code Playgroud)

django django-rest-framework

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

Django芹菜设置导入问题

我试图创建一个芹菜文件并运行它..

celery -A myapp worker -l info
Run Code Online (Sandbox Code Playgroud)

但是我得到了错误,

  File "/production/pythonenv/project/lib/python2.7/site-packages/configurations/base.py", line 30, in __new__
    raise ImproperlyConfigured(install_failure)
django.core.exceptions.ImproperlyConfigured: django-configurations settings importer wasn't correctly installed. Please use one of the starter functions to install it as mentioned in the docs: http://django-configurations.readthedocs.org/
Run Code Online (Sandbox Code Playgroud)

这是配置/文件,

(通过'tree myapp/config /'从项目rool运行)

config/
|-- __init__.py
|-- __init__.pyc
|-- celery.py
|-- settings.py
|-- urls.py
|-- wsgi.py  
myapp/
|-- __init__.py
|-- __init__.pyc
|-- celery.py
|-- helper.py
|-- models.pyc
|-- serializers.py
|-- views.py
Run Code Online (Sandbox Code Playgroud)

celery.py

from __future__ import absolute_import
import os,sys,
from …
Run Code Online (Sandbox Code Playgroud)

python django celery

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

禁用使用jQuery向下滚动

有没有办法只在jQuery中禁用向下滚动?

非常感谢你提前

javascript jquery scroll

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