我有一个三级Invoice模型,我想在Django的管理区域显示...以一种" 特殊的 "方式.
请允许我提供一些背景知识:
每个Invoice都符合几个SubInvoice(s),每个SubInvoice都符合几个InvoiceItem(s),其中包含Products客户购买的故障.
从逻辑上讲,它是这样的(希望ascii艺术作品)
+---------- Invoice id=3 -----------+
|       Full total: $100.00         |
|                                   |
|  +----- Sub Invoice id=1 -----+   |
|  |      Subtotal $70          |   |
|  |                            |   |
|  |    Item 1 in SubInv.1      |   |
|  |    Item 2 in SubInv.1      |   |
|  |    Item 3 in SubInv.1      |   |
|  |____________________________|   |
|                                   |
|  +----- Sub Invoice id=2 …在Python中是否有任何预先制作的优化工具/库来切割/切片列表中的值"小于"某些东西?
这是问题所在:假设我有一个列表如下:
a=[1,3,5,7,9]
我想删除所有<=6 的数字,所以结果列表将是
[7,9]
6不在列表中,所以我不能使用列表的内置index(6)方法.我可以这样做:
#!/usr/bin/env python
a = [1, 3, 5, 7, 9]
cut=6
for i in range(len(a)-1, -2, -1):
    if a[i] <= cut:
        break
b = a[i+1:]
print "Cut list: %s" % b
如果要切割的索引接近列表的末尾,这将是相当快速的方法,但如果项目接近列表的开头,那将是低效的(让我们说,我想删除所有项目>2,会有很多迭代).
我也可以使用二进制搜索等实现我自己的find方法,但我想知道是否有一个更宽的内置库来处理这类我可以在其他情况下重用的东西(例如,如果我需要删除所有的数字>=6).
先感谢您.
所以......我知道这个问题可能危险地接近于基于意见。我希望不是,并且 REST 标准清楚地说明了我要问什么,但如果不是,我将关闭它。
我有一个带有Product(-s) 和Category(-ies)的网站(在 Django 中,数据存储在 Postgres 中)每个都category可以包含多个product(-s)。
所以,问题是:获取所有类别以及每个类别中的所有产品的“正确”端点(如果有的话)是什么?
我相信获得特定类别的所有产品会很清楚。例如,如果类别 ID 是24,为了获得它的所有产品,我会写:
http://myserver.com/api/categories/24/products
但是所有类别以及每个类别中的所有产品如何?
会http://myserver.com/api/categories/products吗?
会http://myserver.com/api/categories/all/products吗?
使用某种参数会更好,例如http://myserver.com/api/categories?mode=all_products?
这个想法会有这样的响应(JSON格式)
{
    "25": [{
        "id": 1,
        "name": "Product 1 in category 25",
        "price": 100
    }, {
        "id": 2,
        "name": "Product 2 in category 25",
        "price": 200
    }],
    "26": [{
        "id": 3,
        "name": "Product 1 in category 26",
        "price": 300
    }, {
        "id": 4,
        "name": …我已经能够通过使用命令创建一个受DES3密码保护的RSA密钥(嗯...... 我认为因为我对这个加密世界很新)
openssl genrsa -out "/tmp/myKey.pem" -passout pass:"f00bar" -des3 2048
现在,如果可能的话,我想在Python脚本中使用PyCrypto.我看到过这条消息,似乎不鼓励使用PyCrypto来做到这一点.还是那样吗?
当然我总是可以打电话os.execute,执行上面的命令,但我会考虑"作弊" :-).我正在这样做以学习PyCrypto.
先感谢您.
我正在创建一个包含两个部分的小应用程序:其中一个显示在Chrome浏览器中,另一个是用Python编程的本地应用程序.
在Chrome中,用户<select>可以选择他/她的首选语言.该信息由Chrome存储在Cookie中.
我想知道是否可以检索该语言首选项(意思是,读取cookie),因此当我运行本地应用程序时,它将显示在用户已经使用Chrome选择的同一语言上.
我不能改变系统的语言环境(这可能是最有意义的).这必须保留英文,但如果用户通过Chrome 选择中文作为首选语言,然后启动本地应用程序,我希望该应用程序能够以中文启动.
我一直在看Chrome 的命令行开关,但我没有看到任何有用的东西.最多,--enable-file-cookies选项,然后尝试打开并解析cookie文件......不知何故,但我能找到的所有信息都非常模糊.
先感谢您!
更新.进一步搜索(1,2)似乎表明,Chrome会保存使用SQL精简版的cookie.我正在调查这个.也许有希望......
我是MongoDB及其Java ... SDK的新手?API?我有一个非常简单的问题,但我找不到满意的答案.
假设我有一组实例,如:
{
    "_id": {
        "$oid": "5156171e5d451c136236e738"
    },
    "_types": [
        "Sample"
    ],
    "last_z": {
        "$date": "2012-12-30T09:12:12.250Z"
    },
    "last": {
        "$date": "2012-12-30T04:12:12.250Z"
    },
    "section": "5156171e5d451c136236e70f",
    "s_mac": "AA:AA:AA:AA:AA:AA",
    "_cls": "Sample",
}
我有一个硬编码的Java列表:
static List<String> MAC_LIST = Arrays.asList("90:27:E4:0E:3D:D2", "A8:26:D9:E6:1D:8B");
我想知道的是如何查询MongoDB,以便它将为我提供其s_mac字段具有MAC_LIST列表中显示值的所有对象.
我猜我应该使用$ in运算符,但我不知道如何将它转换为Java代码.
任何提示或链接到页面,$in通过Java SDK 解释运算符的使用将不胜感激!
我知道这是一个非常简单的问题,但是我已经在Python工作了很长时间,现在我必须回到Java,我似乎在更换芯片时遇到了问题,并且围绕着Java的基本多态性.
是否可以abstract使用其中一个继承的类作为参数覆盖(实现,确切地说)Java中的类方法?
让我用一个非常简单的例子来解释(遵循"几乎官方"的 形状示例)
class Shape {}
class Circle extends Shape {}
class Triangle extends Shape {}
abstract class ShapeDrawer {
    abstract void draw(Shape s); 
}                       
class CircleDrawer extends ShapeDrawer {
    void draw(Circle c){
        System.out.println("Drawing circle");
    }
}
有没有让Java识别的任何方式draw的方法CircleDrawer类作为抽象的实施draw中ShapeDrawer?(Circle班级从Shape毕竟延伸)
否则说:我想要的是类的draw方法CircleDrawer只接受类型的实例Circle,但同时,我想告诉Java编译器它void draw(Circle c)实际上是abstract void draw(Shape s)位于其父类中的抽象方法的实现类.
先感谢您.
我有一个python字典,其键是字符串,值是对象.
例如,一个带有一个字符串和一个int的对象
class DictItem:
   def __init__(self, field1, field2):
      self.field1 = str(field1)
      self.field2 = int(field2)
和字典:
myDict = dict()
myDict["sampleKey1"] = DictItem("test1", 1)
myDict["sampleKey2"] = DictItem("test2", 2)
myDict["sampleKey3"] = DictItem("test3", 3)
哪个是获得"field2"字段> = 2的字典条目的最佳/最有效方法?
这个想法是创建一个"子词典"(列表也会这样),只有field2> = 2的条目(在例子中会是这样):
{
    "sampleKey2": {
        "field1" : "test2",
        "field2": 2 
    },
    "sampleKey3": {
        "field1" : "test3",
        "field2": 3 
    }
}
有没有比走遍所有字典元素并检查条件更好的方法?也许使用itemgetters和lambda函数?
谢谢!
PS:我正在使用Python2.4,以防万一它是相关的
假设我有这样一个类:
class Foo(declarativeBase):
     bars1 = relationship(Bar.Bar, secondary=foos_to_bars1, collection_class=set())
     bars2 = relationship(Bar.Bar, secondary=foos_to_bars2, collection_class=list())
(每个关系都给了我"Bar"一定的条件).在某一点上,我想在任何关系中获得具有"bar"(Bar.Bar实例)的"Foo"实例.
如果我尝试做:
def inAnyBar(bar)
   query(Foo).filter(or_(Foo.bars1.contains(bar), Foo.bars2.contains(bar)).all()
我得到一个空洞的结果.
看起来(对我来说)就像我做的那样:
query(Foo).join(Foo.bars1).filter(Foo.bars1.contains(bar)).\
join(Foo.bars2).filter(Foo.bars1.contains(bar))
由于Foo.bars1不包含bar,因此第二个过滤器会显示空结果.
我已经能够找到一个子查询的解决方法(子查询中的每个连接+过滤器,然后或所有子查询),但我想知道是否有更好的方法来做...
我发现了这个:http: //techspot.zzzeek.org/2008/09/09/selecting-booleans/
这就是我想做的事情,但它适用于SqlAlchemy 0.5而且我(几乎)确定使用SqlAlchemy 0.6.6有一种"更清洁"的方法
谢谢!
这是一个非常简单的问题,但我似乎无法找到一个令人满意的答案.
在Python中,最好的方法是使列表的最后一项成为第一个"推动"列表其余部分的项目.
做的事:
>>> a=[1,2,3,4]
>>> a[?????]
[4, 1, 2, 3]
我知道我总是可以玩len,列出串联...
>>> a=[1,2,3,4]
>>> [a[len(a)-1]] + a[0:len(a)-1]
[4, 1, 2, 3]
但这看起来并不正确......" Pythonic ",如果可能的话
先感谢您.
python ×7
list ×3
java ×2
relationship ×2
abstract ×1
admin ×1
cookies ×1
des ×1
dictionary ×1
django ×1
encryption ×1
find ×1
inheritance ×1
mongodb ×1
oop ×1
pycrypto ×1
rest ×1
rsa ×1
sqlalchemy ×1
ubuntu ×1