小编Ban*_*jer的帖子

在Django Rest Framework中的响应中包含中介(通过模型)

我有一个关于处理m2m /通过模型及其在django rest框架中的表示的问题.我们来看一个经典的例子:

models.py:

from django.db import models

class Member(models.Model):
    name = models.CharField(max_length = 20)
    groups = models.ManyToManyField('Group', through = 'Membership')

class Group(models.Model):
    name = models.CharField(max_length = 20)

class Membership(models.Model):
    member = models.ForeignKey('Member')
    group = models.ForeignKey('Group')
    join_date = models.DateTimeField()
Run Code Online (Sandbox Code Playgroud)

serializers.py:

imports...

class MemberSerializer(ModelSerializer):
    class Meta:
        model = Member

class GroupSerializer(ModelSerializer):
    class Meta:
        model = Group
Run Code Online (Sandbox Code Playgroud)

views.py:

imports...

class MemberViewSet(ModelViewSet):
    queryset = Member.objects.all()
    serializer_class = MemberSerializer

class GroupViewSet(ModelViewSet):
    queryset = Group.objects.all()
    serializer_class = GroupSerializer
Run Code Online (Sandbox Code Playgroud)

在获取成员实例时,我成功接收了所有成员的字段及其组 - 但是我只获得了组的详细信息,而没有来自成员模型的额外详细信息.

换句话说,我希望收到:

{ …
Run Code Online (Sandbox Code Playgroud)

python django django-rest-framework

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

在Django中存储用户活动

我希望存储用户的活动,但我不知道在哪里存储它.我不认为数据库是一个选项,因为它将是非常大的.我想知道像facebook,dropbox这样的网站是如何记住特定用户的所有活动的.并且它不能存储在会话中,因为这不是特定于会话的,而是特定于用户的.

请帮我解决你的建议.

django django-models

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

如何在Opencart中检索自定义属性?

我已经定义了一些自定义属性,并通过Opencart管理面板将它们分配给产品.我正在尝试在结账时检索这些属性以调整一些运费.

我目前正在catalog/model/shipping/ups.php使用该getQuote函数中的文件.我正在接近这个:

print_r($this->cart->getProducts());
Run Code Online (Sandbox Code Playgroud)

这给了我以下产品数据:

Array
(
    [59] => Array
        (
            [key] => 59
            [product_id] => 59
            [name] => My Product Name 
            [model] => ABC
            [shipping] => 1
            [image] => data/myproduct.jpg
            [option] => Array
                (
                )

            [download] => Array
                (
                )

            [quantity] => 1
            [minimum] => 1
            [subtract] => 1
            [stock] => 1
            [price] => 29.99
            [total] => 29.99
            [reward] => 0
            [points] => 0
            [tax_class_id] => 0
            [weight] => 3.75
            [weight_class_id] => 5
            [length] …
Run Code Online (Sandbox Code Playgroud)

php opencart

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

正则表达式以获取括号外的所有文本

我试图用正则表达式抓住括号外的任何文本.

示例字符串

Josie Smith [3996 COLLEGE AVENUE,SOMETOWN,MD 21003] Mugsy Dog Smith [2560 OAK ST,GLENMEADE,WI 14098]

我能够成功地获得方括号的文本:

addrs = re.findall(r"\[(.*?)\]", example_str)
print addrs
[u'3996 COLLEGE AVENUE, SOMETOWN, MD 21003',u'2560 OAK ST, GLENMEADE, WI 14098']    
Run Code Online (Sandbox Code Playgroud)

但我在方括号之外得到任何东西都遇到了麻烦.我尝试过以下内容:

names = re.findall(r"(.*?)\[.*\]+", example_str)
Run Code Online (Sandbox Code Playgroud)

但是只找到第一个名字:

print names
[u'Josie Smith ']
Run Code Online (Sandbox Code Playgroud)

到目前为止,我只看到一个包含一到两个name [address]组合的字符串,但我假设字符串中可以有任意数量的字符串.

python regex

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

使用scapy,iftop样式计算每个IP的带宽使用情况

我正在使用scapy来嗅探镜像端口并生成前10个"谈话者"的列表,即使用我网络上最大带宽的主机列表.我知道已有的工具,如iftopntop,但我需要更多控制输出.

以下脚本对流量进行30秒的采样,然后以"源主机 - >目标主机:字节"格式打印前10个谈话者的列表.这很好,但我怎样才能计算每秒的平均字节数

我意识到将sample_interval更改为1秒不允许对流量进行良好的采样,因此我似乎需要将其平均化.所以我在脚本的最后尝试了这个:

每秒字节数=(total bytes/sample_interval)

但最终的Bytes/s似乎要低得多.例如,我以1.5 MB/s的节流速率在两台主机之间生成了一个rsync,但是使用上面的平均计算,我的脚本一直计算这些主机之间的速率大约为200 KB/s ...远低于1.5 MB/s正如我所料.我可以用iftop确认1.5 MB/s实际上是这两个主机之间的速率.

我用scapy错误地总计数据包长度(请参阅traffic_monitor_callbak函数)?或者这完全是一个糟糕的解决方案:)?

from scapy.all import *
from collections import defaultdict
import socket
from pprint import pprint
from operator import itemgetter

sample_interval = 30  # how long to capture traffic, in seconds

# initialize traffic dict
traffic = defaultdict(list)

# return human readable units given bytes
def human(num):
    for x in ['bytes','KB','MB','GB','TB']:
        if num < 1024.0:
            return "%3.1f %s" % (num, …
Run Code Online (Sandbox Code Playgroud)

python networking network-programming scapy

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

如何在R中添加一个短划线?

我在R中创建了一个情节,需要在某些轴标签上添加一个短划线,而不是你的日常连字符.

axis(1, at=c(0:2), labels=c("0-10","11-30","31-70"))
Run Code Online (Sandbox Code Playgroud)

我在Linux上运行R版本2.8.1.

r character

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

srpm spec文件中的问号和感叹号语法

我试图了解Postgres 9.1 rpms是如何在CentOS/RHEL 6上构建的,所以我要看一下源rpms中的spec文件.

以下语法是什么意思?具体来说,问号和感叹号?

%{!?test:%define test 1}
%{!?plpython:%define plpython 1}
%{!?pltcl:%define pltcl 1}
%{!?plperl:%define plperl 1}
%{!?ssl:%define ssl 1}
%{!?intdatetimes:%define intdatetimes 1}
%{!?kerberos:%define kerberos 1}
%{!?nls:%define nls 1}
%{!?xml:%define xml 1}
%{!?pam:%define pam 1}
%{!?disablepgfts:%define disablepgfts 0}
%{!?runselftest:%define runselftest 0}
%{!?uuid:%define uuid 1}
%{!?ldap:%define ldap 1
Run Code Online (Sandbox Code Playgroud)

我知道你可以定义一个宏变量%define <name>[(opts)] <value>,我相信感叹号是一个逻辑否定运算符.我找不到关于问号或上述例子的任何信息.在定义宏变量之前,似乎是某种测试.

是spec文件的粘贴.

specifications centos rpm rpm-spec

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

django上下文处理器

我有一堆变量需要可供所有模板的视图使用.似乎最好的选择是上下文处理器.

文件说:

上下文处理器有一个非常简单的接口:它只是一个Python函数,它接受一个参数,一个HttpRequest对象,并返回一个被添加到模板上下文的字典.每个上下文处理器必须返回一个字典

如果我需要进行更高级的查找,我可以定义其他功能吗?这些功能需要在课堂上吗?我正在考虑创建一个context_processors.py在我的app文件夹中命名的文件.

django

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

Git手册页似乎不正确

我是git的新手,所以请原谅我这是一个愚蠢的问题.

我在SLES Linux上从源代码安装了git 1.7.7.4,看起来都不错.我在$ MANPATH中添加了以下内容:

/usr/local/git-1.7.7.4/share/man
Run Code Online (Sandbox Code Playgroud)

当我这样做的时候man git,我会被提出来

Git(3)         User Contributed Perl Documentation         Git(3)

NAME
       Git - Perl interface to the Git version control system

SYNOPSIS
...
Run Code Online (Sandbox Code Playgroud)

这看起来不像我在命令行中使用的git命令的手册页.或者是吗?听起来像perl的东西,显然.这是我看到的完整手册页的在线版本.

如果这不是正确的手册页,我在哪里可以找到它们?如果需要,我可以给我的git安装目录列表.谢谢.

linux git suse manpage

5
推荐指数
3
解决办法
983
查看次数

如何处理plist中的浮点值

我正在从一个Web服务器读取一个plist,用一些php生成.当我在我的iphone应用程序中将其读入NSArray,然后使用NSLog将NSArray吐出来检查它时,我看到浮点值被视为字符串.我希望将"距离"值视为数字而不是字符串.这个plist显示在一个表视图中,它可以按距离排序,但问题是距离被排序为一个字符串,所以我得到了一些有趣的排序结果.

我可以将距离值从NSArray中的字符串转换为float吗?或者也许是一个更简单的解决方案,比如调整plist定义,或者NSMutableURLRequest代码中的某些东西?

我的plist看起来像这样:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<array>
  <dict>
    <key>name</key>
    <string>Pizza Joint</string>
    <key>distance</key>
    <string>2.1</string>
  </dict>
  <dict>
    <key>name</key>
    <string>Burger Kang</string>
    <key>distance</key>
    <string>5</string>
  </dict>
</array>
</plist>
Run Code Online (Sandbox Code Playgroud)

在将其读入NSArray之后,它看起来像每个NSLog:

    result: (
      {
        distance = "2.1";
        name = "Pizza Joint";
      },
        {
        distance = 5;
        name = "Burger Kang";
      }
    )
Run Code Online (Sandbox Code Playgroud)

以下是检索plist的Objective-C代码:

// Set up url request
// postData and postLength are left out, but I can post in this question if needed.
NSMutableURLRequest *request = [[[NSMutableURLRequest …
Run Code Online (Sandbox Code Playgroud)

iphone objective-c plist

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