小编Ach*_*nol的帖子

如何指定Django测试服务器应该监听哪个eth接口?

正如标题所说,在具有多个IP环境的多个以太网接口中,默认的Django测试服务器没有连接到我可以从我的PC访问的网络.有没有办法指定Django测试服务器应该使用的接口?

- 添加 -

网络配置在这里.我通过我的电脑上的143.248.xy地址连接到机器.(我的电脑也在143.248.ab网络.)但我找不到这个地址.正常的apache以及在其他端口上运行的其他自定义守护进程非常有效.

配置这台机器的人不是我,所以我不太了解网络的细节......

eth0      Link encap:Ethernet  HWaddr 00:15:17:88:97:78
          inet addr:192.168.6.100  Bcast:192.168.2.255  Mask:255.255.255.0
          inet6 addr: fe80::215:17ff:fe88:9778/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:441917680 errors:0 dropped:0 overruns:0 frame:0
          TX packets:357190979 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0
          RX bytes:191664873035 (178.5 GB)  TX bytes:324846526526 (302.5 GB)

eth1      Link encap:Ethernet  HWaddr 00:15:17:88:97:79
          inet addr:172.10.1.100  Bcast:172.10.1.255  Mask:255.255.255.0
          inet6 addr: fe80::215:17ff:fe88:9779/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:1113794891 errors:0 dropped:97 overruns:0 frame:0
          TX packets:699821135 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 …
Run Code Online (Sandbox Code Playgroud)

python django networking ethernet

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

为什么`type(x).__在Python标准contextlib中输入__(x)`而不是`x .__输入__()`?

contextlib.py,我看到ExitStack类正在呼叫__enter__()经由类型的对象方法(type(cm)),而不是直接方法调用给定对象(cm).

我想知道为什么或为什么不.

例如,

  • 发生错误时它会提供更好的异常跟踪吗?
  • 它只是特定于一些模块作者的编码风格?
  • 它有任何性能优势吗?
  • 它是否避免了复杂类型层次结构的一些工件/副作用?

python

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

Dockerfile ARG 和 ENV 中 shell 表达式的默认值

我想将版本号作为单个参数接收,并在 Dockerfile 的 RUN 脚本中提取 URL 中各个位置的主要/次要编号。

ARG CUDA_VERSION
ARG CUDNN_VERSION

ENV CUDA_FULL="${CUDA_VERSION:-8.0.61_375.26}" \
    CUDA_MAJOR="$(echo ${CUDA_VERSION:-8.0.61_375.26} | cut -d. -f1)" \
    CUDA_MINOR="$(echo ${CUDA_VERSION:-8.0.61_375.26} | cut -d. -f2)" \
    CUDA_MAJMIN="$CUDA_MAJOR.$CUDA_MINOR"
ENV CUDNN_FULL="${CUDNN_VERSION:-7.0.1}" \
    CUDNN_MAJOR="$(echo ${CUDNN_VERSION:-7.0.1} | cut -d. -f1)" \
    CUDNN_MINOR="$(echo ${CUDNN_VERSION:-7.0.1} | cut -d. -f2)" \
    CUDNN_MAJMIN="$CUDNN_MAJOR.$CUDNN_MINOR"

RUN curl -LO https://.../${CUDNN_FULL}/.../...${CUDA_MAJMIN}...
Run Code Online (Sandbox Code Playgroud)

如果我尝试上述操作,则不会评估 shell 表达式,而是按原样粘贴在后面的 RUN 脚本中。

如果不创建包装此 Dockerfile 的外部 shell 脚本,是否有更好的方法来实现这一点?

shell docker dockerfile

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

为Django的管理操作编写测试

我正在使用Django 1.1 beta并希望使用管理员操作.我必须为那些编写单元测试,但我不知道如何为它们编写测试.

对于普通视图处理程序函数,我可以使用Django的TestClient来模拟http请求/响应,但是如何使用管理操作呢?

python testing django unit-testing django-admin

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

在Django模板中定义"全局变量"

我做的事情如下:

{% extends 'base.html' %}
{% url myapp.views.dashboard object as object_url %}
{% block sidebar %}
... {{ object_url }} ...
{% endblock %}
{% block content %}
... {{ object_url }} ...
{% endblock %}
Run Code Online (Sandbox Code Playgroud)

Django文档说url templatetag可以在上下文中定义变量,但是我object_url在以下块中没有得到任何值.

如果我将url templatetag放在每个块的开头,它可以工作,但我不想"重复自己".

谁知道更好的解决方案?

django django-templates

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

具有自定义选择字段的Django模型查询

我正在使用称为django-granular-permissions(http://code.google.com/p/django-granular-permissions/)的行级权限模型.权限模型只有两个字段,即content-type和object id.

我使用了以下查询:

 User.objects.filter(Q(row_permission_set__name='staff') | \
     Q(row_permission_set__name='student'), \
     row_permission_set__object_id=labsite.id)
Run Code Online (Sandbox Code Playgroud)

我想在结果集中添加is_staffis_student布尔字段,而不是每次获取结果时都要查询.

Django文档显示了查询集的extra()方法,但我无法弄清楚我应该用这种关系为纯SQL选择查询编写什么.

这该怎么做?

python django django-models

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

在Python的交互式shell中处理异常而不使用try块

请参阅此问题的标题.我想玩最后一个命令中引发的异常._没帮我 有什么相似的吗?

python command-line exception-handling interactive-mode

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