小编Sam*_*Sam的帖子

注释两个字段的总和相乘

我有三个模型,简化为例子:

class Customer(models.Model):
    email = models.CharField(max_length=128)

class Order(models.Model):
    customer = models.ForeignKey(Customer)
    order_status = models.CharField(blank=True, max_length=256)

class Lineitem(models.Model):
    order = models.ForeignKey(Order)
    quantity = models.IntegerField(blank=True)
    price = models.DecimalField(max_digits=6, decimal_places=2)
Run Code Online (Sandbox Code Playgroud)

我想查询客户(可能使用过滤器)并注释他们花费的总额(即总和(价格*数量))

我试过了:
Customer.objects.filter(something).annotate(total_spent=Sum(F('order__lineitem__quantity') * F('order__lineitem__price')))

似乎Sum()不能与F()表达式一起使用.还有另一种方法吗?

django django-models

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

开始创建自定义视图过渡

我正在寻找有关创建自定义视图过渡的教程.

特别是,涉及除UIViews之外的元素的转换受到影响,例如在转换过程中播放动画或正在修改UIView的屏幕截图.

我并不是要实现Apple的网站上有大量示例的基本转换集(幻灯片,淡入淡出等).我正在谈论添加视频/声音/附加动画,同时将其全部包装在可重复使用的过渡中.

我模糊地熟悉一些底层工具包(核心动画和石英),但我正在寻找关于这个主题的无先前经验教程.

iphone core-animation uikit

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

通过要求所有许多满足条件来过滤一对多查询

想象一下下表:

创建表格框(id int,name text,...);

创建表thinginboxes(id int,box_id int,thing enum('apple,'banana','orange');

表格如下:

Boxes:
id | name
1  | orangesOnly
2  | orangesOnly2
3  | orangesBananas
4  | misc

thingsinboxes:
id | box_id | thing
1  |  1     | orange
2  |  1     | orange
3  |  2     | orange
4  |  3     | orange
5  |  3     | banana
6  |  4     | orange
7  |  4     | apple
8  |  4     | banana

如何选择包含至少一个橙色的盒子,而不包含任何不是橙色的盒子?

这个规模如何,假设我有数十万个盒子,可能有一百万个盒子?

如果可能的话,我想将这一切保留在SQL中,而不是使用脚本对结果集进行后处理.

我正在使用postgres和mysql,因此子查询可能很糟糕,因为mysql没有优化子查询(无论如何都是版本6).

mysql sql join one-to-many

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

如何在iPhone应用程序中枚举和加载资源?

我正在尝试使用参考资料中的一组图像填充NSArray.但是,为了获得最大的灵活性,我试图避免对文件名进行硬编码,甚至避免使用多少文件.

通常,我会在apple的示例代码中执行类似这样的示例:

kNumImages = 5;  //or whatever
NSMutableArray *images;
for (i = 1; i <= kNumImages; i++)
{
    NSString *imageName = [NSString stringWithFormat:@"image%d.jpg", i];
    [images addObject:[UIImage imageNamed:imageName];
}
Run Code Online (Sandbox Code Playgroud)

但是,我试图完全避免使用kNumImages.有没有办法在资源上运行正则表达式?

iphone cocoa-touch

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